This chapter briefly covers the main portions of the thread API. Each part will be explained further in the subsequent chapters, as you will see how to use the API. More details can be found in various books and online sources1- “An Introduction to Programming with Threads” by Andrew D. Birrell. DEC Technical Report, January, 1989. Available: https://birrell.org/andrew/papers/035-Threads.pdf A classic but older introduction to threaded programming. Still a worthwhile read, and freely available. 2- “Programming with POSIX Threads” by David R. Butenhof. Addison-Wesley, May 1997. Another one of these books on threads. 3- “PThreads Programming: by A POSIX Standard for Better Multiprocessing. ” Dick Buttlar, Jacqueline Farrell, Bradford Nichols. O’Reilly, September 1996 A reasonable book from the excellent, practical publishing house O’Reilly. Our bookshelves certainly contain a great deal of books from this company, including some excellent offerings on Perl, Python, and Javascript (particularly Crockford’s “Javascript: The Good Parts”.) 4- “Programming With Threads” by Steve Kleiman, Devang Shah, Bart Smaalders. Pren- tice Hall, January 1996. Probably one of the better books in this space. Get it at your local library. Or steal it from your mother. More seriously, just ask your mother for it – she’ll let you borrow it, don’t worry.. You should note that the subsequent chapters introduce the concepts of locks and condition variables more slowly, with many examples; this chapter is thus better used as a reference.
CRUX: HOW TO CREATE AND CONTROL THREADS
What interfaces should the OS present for thread creation and control? How should these interfaces be designed to enable ease of use as well as
utility?