book describes a method for writing concurrent computer programs of high quality. It is written for professional programmers and students who are faced with the complicated task of building reliable computer operating systems or real-time control programs.
The motivations for mastering concurrent programming are both economic and intellectual. Concurrent programming makes it possible to use a computer where many things need attention at the same time--be they people at terminals or temperatures in an industrial plant. It is without doubt the most difficult form of programming.
This book presents a systematic way of developing concurrent programs in a structured language called Concurrent Pascal--the first of its kind. The use of this language is illustrated by three non-trivial concurrent programs : a single-user operating system, a job-stream system, and a real-time scheduler. All of these have been used successfully on a PDP 11/45 computer. The book includes the complete text of these three programs and explains how they are structured, programmed, tested, and described. In an earlier book, Operating System Principles [Prentice-Hall, 1973],