PREFA CE
1 TYPICAL REAL-TlME APPLICATJONS
1.1 Digital Control
1.2 High-Level Controls
1.3 Signal Processing
1.4 Other Real-Time Applications
1.5 Summary
2 HARD VERSUS SOFT REAL-TlME SYSTEMS
2.1 Jobs and Processors
2.2 Release Times, Deadlines, and Timing Constraints
2.3 Hard and Soft Timing Constraints
2.4 Hard Real-Time Systems
2.5 Soft Real-Time Systems
2.6 Summary
3 A REFERENCE MODEL OF REAL-TIME SYSTEMS
3.1 Processors and Resources
3.2 Temporal Parameters of Real-Time Workload
3.3 Periodic Task Model
3.4 Precedence Constraints and Data Dependency
3.5 Other Types of Dependencies
3.6 Fanctional Parameters
3.7 Resource Parameters of Jobs and Paramelers of Resources
3.8 Sckeduling Hierarchy
3.9 Summary
4 COMMONLY USED APPROACHES TO REAL-TME SCHEDULIG
4.1 Clock-Driven Approach
4.2 Weighted Round-Robin Approach
4.3 Priority-Driven Approach
4.4 Dynamic versus Static Systems
4.5 Effective Release Times and Deadlines
4.6 Optimality of the EDF and LST Algorithms
4.7 Nonoptimality of the EDF and the LST Algorithms
4.8 Challenges in Validating Timing Constraints
in Ptiority-Driven Systems
4.9 Off-Line versus On-Line Scheduling
4.10 Summry
4.11 Exercises
5 CLOCK-DRIVEN SCHEDULING
5.1 Notations and Assumptions
5.2 Static, Timer-Driven Scheduler
5.3 General Structure of Cyclic Schedules
5.4 Cyclic Executives
5.5 Improving the Average Response Time of Aperiodic Jobs
5.6 Scheduling Sporadic Jobs
5.7 Practical Considerations and Generalizations
5.8 Algorithm for Constructing Static Schedules
5.9 Pros and Cons of Clock-Driven Scheduling
5.10 Sammary
6 PRIOROTY-DRIVEN SCHEDULING OF PERIODIC TASKS
6.1 Static Assumption
6.2 Fixed-Priority versus Dynamic-Ptiority Algorithms
6.3 Maximum Schedulable Utilization
6.4 Optimality of the RM and DM Algorithms
6.5 A Schedulability Test for Fixed-Priority Tasks with Shon Response Times
6.6 Schedulability Test for Fixed-hriority Tasks with Arbitrary Response Times
6.7 Sufficient Schedulability Conditions for the RM and DM Algorthms
6.8 Ptactical Factors
6.9 Sammary
7 SCHEDULING APERIODIC AND SPORADIC JOBS W PRIORITY-DRfVEN SYSTEMS
7.1 Assumptions and Approaches
7.2 Deferrable Servers
7.3 Sporadic Servers
7.4 Constant Utilization, Total Bandwidth, and Weighted Fair-Queueing Servers
7.5 Slack Stealing in Deadline-Driven Systems
7.6 Slack Stealing in Fixed-Priority Systems
7.7 Scheduling of Sporadic Jobs
7.8 Real-Time Performance for Jobs with Soft Timing Constraints
7.9 A Two-Level Scheme for Integrated Scheduling
7.10 Summary
8 RESOURCES AND RESOURCE ACCESS CONTROL
8.1 Assumptions on Resources and Their Usage
8.2 Effects of Resource Contention aad Resource Access Control
8.3 Nonpreemptive Critical Sections
8.4 Basic Priority-Inheritance Protocol
8.5 Basic Priority-Ceiling Protocol
8.6 Stack-Based, Priority-Ceiling (Ceiling-Priority) Protocd
8.7 Use of Priority-Ceiling Protocol in Dynamic-Priority Systems
8.8 Preemption-Ceiling Protocol
8.9 Controlling Accesses to Multiple-Unit Resources
8.10 Controlling Concurrent Accesses to Data Objects
8.11 Summary
9 MU TIPROCESSOR SCHEDULING, RESOURCE ACCESS CONTROL,AND SYNCHRONIZATION
9.1 Model of Multiprocessor and Distributed Systems
9.2 Task Assignment
9.3 Multiprocessor Priority-Ceiling Protocol
9.4 Elements of Scheduling Algorithms for End-to-End Periodic Tasks
9.5 Schedulability of Fixed-Priority End-to-End Periodic Tasks
9.6 End-to-End Tasks in Heterogeneous Systems
9.7 Predictability and Validation of Dynamic Multiprocessor Systems
9.8 Summary
10 SCHEDULING FLEXIBLE COMPPUTATIONS AND TASKS WITH TEMPORAL DISTANCE CONSTRAINTS
10.1 Flexible Applications
10.2 Tasks with Temporal Distance Constraints
10.3 Summary
11 REAL-TlME COMMUNICAION
11.1 Model of Real-Time Communication
11.2 Priority-Based Service Disciplines for Switched Networks
11.3 Weighted Round-Robin Service Disciplines
11.4 Medium Access-Control Protocols of Broadcast Networks
11.5 Internet and Resource Reservation Protocols
11.6 Real-Time Protocol
11.7 Communication in Multicomputer Systems
11.8 Summary
12 OPERATING SYSTENIS
12.1 Overiew
12.2 Time Services and Scheduling Mechanisms
12.3 Other Basic Operating System Functions
12.4 Processor Reserves and Resource Kernel
12.5 Open System Architecture
12.6 Capabilities of Commercial Real-Time Operating Systems
12.7 Predictability of Ceneral-Purpose Operating Systems
12.8 Summary
APPENDIX POSIX THREAD AND REAL-TIME EXTENSIONS
BIBLIOGRAPHY
INDEX