The title of this book is misleading; a more precise title would be System programs for real-time microcontrollers. The text covers a complete design for a real-time executive and a relevant set of application-oriented system programs at the language level (C or assembly). Twelve chapters describe the executive (real-time kernel) clearly and in detail. The coverage includes process management, and in particular task scheduling and interprocess communication. The application-oriented system programs extend the executive to include device drivers, interrupt handlers, and a preemptive scheduler. Separate chapters deal with multiprocessing aspects, program development and loading, and hardware support.
The book’s strength is as a detailed case study. The author clearly has a good amount of practical experience, which lends authority to this description. What is lacking in the book to live up to its title is a wider perspective. For example, the selection of the hardware architecture is a fundamental part of the design of a real-time system, but Heath uses the MC68000 without considering other possibilities. For each function, a design is shown but no alternatives are considered. This lack of perspective is reflected in the list of references, which includes only five entries. As supplementary reading for a more general book on this subject, this work could be valuable, but reading it alone would give a distorted view of the design of real-time software.