The idea behind POSIX threads is to have multiple tasks running concurrently within the same program. They can share a single CPU as processes do, or take advantage of multiple CPUs when available. In either case, they provide a clean way to divide the tasks of a program while sharing data. This book features realistic examples, a look behind the scenes at the implementation and performance issues, and special topics such as DCE and real-time extensions.
Über den Autor und weitere Mitwirkende
Brad Nichols is a free-lance do-anything-computerish-for-a-buck kind of guy who works out of Milford, NH. He earned a Bachelor of Science degree in mechanical engineering from the University of New Hampshire in 1985 and a Master of Science degree from Worcester Polytechnic Institute (WPI) in 1991. He started his computer career working on very hard hardware (fuel pumps and valves). He worked his way up through the hardware layers into software on projects involving embedded avionics systems at Textron Lycomming and United Technologies Hamilton Standard Division. Brad left these jobs to learn more about AI at WPI, but instead caught the Mach fever, and was introduced to threads programming in UNIX. While at WPI he also worked on an OSF/1 performance project for the Open Software Foundation (OSF). After attending WPI, Brad taught training seminars to software developers on the Mach kernel interfaces. He then joined Digital Equipment Corporation to work on the port of the OSF's Distributed Computing Environment's Distributed File System (OSFDCEDFSDU for short) to Digital UNIX. Now, Brad is once again on his own and spends most of his time teaching software engineers about technologies with much shorter acronyms -- such as Pthreads. When not working, Brad spends time at home trying to synchronize with his wife, Susan, and three little threads, Dan (who's 7), Tim (5), and Cecelia (3). And, oh yes, there's the lawn and dump things on weekends too. Dick Buttlar is a consulting writer in the UNIX Engineering Group at Digital Equipment Corporation, where he recently completed his stint as project leader for the Digital UNIX cluster documentation. He specializes in programming documentation -- both user-level and kernel -- and, in a former life, wrote the device driver documentation for the VMS operating system. A few years ago, he managed the initial planning of the corporate- wide documentation effort for Digital's Alpha processor. He's worked for Wang Laboratories, Recal/Redac, North American Technologies, and the American Trial Lawyers Association, among other places. He has a B.A. in English from Boston College and an M.A. in English from the University of Wisconsin at Madison. He lives in an ivory protocol tower in Nashua, NH, with his wife, Connie, and three children. He enjoys playing pirates with his son Tom; taking his daughter Maggie fishing; and listening to Rancid with his daughter Jenn. He likes nothing better than hanging out on the Maine seacoast, cooking a nice meal for himself and his wife, while hummingbirds feed outside the kitchen window, the ocean rolls in at the cove, and Miles Davis's "Flamenco Sketches" softly plays on the boombox on the counter. Jackie Farrell has been a software engineer with Digital Equipment Corporation since 1986 and is currently a principal software engineer. She currently leads development of the DCE products for Digital UNIX. Jackie has a B.S. in applied math from the University of Vermont (1986), and studied distributed computing at Cornell University (MEng degree, 1993). Her previous projects at Digital include RT-11, DECtrade, and DCE CDS development. Jackie is happily married to Bernard Farrell, also a software warrior as well as the father of three amazing children, Eleanor, Lee, and Hayley. Jackie and Bernard are soon to be parents of baby Mingzhu, who waits patiently for them in Yunnan Province, China.