This updated edition offers an indispensable exposition on real-time computing, with particular emphasis on predictable scheduling algorithms. It introduces the fundamental concepts of real-time computing, demonstrates the most significant results in the field, and provides the essential methodologies for designing predictable computing systems used to support time-critical control applications. Along with an in-depth guide to the available approaches for the implementation and analysis of real-time applications, this revised edition contains a close examination of recent developments in real-time systems, including limited preemptive scheduling, resource reservation techniques, overload handling algorithms, and adaptive scheduling techniques. This volume serves as a fundamental advanced-level textbook. Each chapter provides basic concepts, which are followed by algorithms, illustrated with concrete examples, figures and tables. Exercises and solutions are provided to enhance self-study, making this an excellent reference for those interested in real-time computing for designing and/or developing predictable control applications.
From the reviews of the third edition: "The book is a classic that results from the author's two decades of teaching and research activities. The present third edition is extended by many meaningful issues ... additional protocols, new concepts, exercises, etc. ... this is a useful, serious book that collects and uniformly presents and compares existing techniques for design and implementation of real-time systems. ... I recommend this book, not only as a textbook for students, but also as a handbook for researchers and practitioners working in this field." (Fevzi Belli, Zentralblatt MATH, Vol. 1246, 2012) "This book describes and analyzes many algorithms for scheduling such tasks in real-time systems. ... The book can be used as an undergraduate- and graduate-level textbook for courses involving real-time systems. The initial chapters are a good introduction to real-time systems for beginners. Professionals and researchers working with real-time systems will find the scheduling algorithms useful." (Maulik A. Dave, ACM Computing Reviews, July, 2012)
Giorgio Buttazzo is Full Professor of Computer Engineering at the Scuola Superiore Sant'Anna of Pisa. He graduated in Electronic Engineering at the University of Pisa in 1985, received a Master in Computer Science at the University of Pennsylvania in 1987, and a Ph.D. in Computer Engineering at the Scuola Superiore Sant'Anna of Pisa in 1991. From 1987 to 1988, he worked on active perception and real-time control at the G.R.A.S.P. Laboratory of the University of Pennsylvania, Philadelphia. From 1991 to 1998, he held a position of Assistant Professor at the Scuola Superiore Sant'Anna of Pisa, where he founded and coordinated the RETIS Laboratory on real-time systems. From 1998 to 2005, he held a position of Associate Professor at the University of Pavia, where he directed the robotics laboratory of the Computer Science department. His main research interests include real-time operating systems, dynamic scheduling algorithms, quality of service control, multimedia systems, advanced robotics applications, and neural networks.
A General View.- Basic Concepts.- A Periodic Task Scheduling.- Periodic Task Scheduling.- Fixed-Priority Servers.- Dynamic Priority Servers.- Resource Access Protocols.- Limited Preemptive Scheduling.- Handling Overload Conditions.- Kernel Design Issues.- Application Design Issues.- Real-Time Operating Systems and Standards.- Solutions to the Exercises.- References.- IndexA General View.- Basic Concepts.- Aperiodic Task Scheduling.- Periodic Task Scheduling.- Fixed-Priority Servers.- Dynamic Priority Servers.- Resource Access Protocols.- Handling Overload Conditions.- Kernel Design Issue.- Application Design Issues.- Real-Time Operating Systems and Standard.- Solutions to the Exercises.- Glossary.