| Week/Topic |
Slides |
|
|
| Introduction |
slides
Examples and Case Studies
What is a Real-Time System?
Real-Time vs. Non-Real-Time Systems
Hard vs. Soft Real-Time Systems
|
| Reference Model for Real-Time Systems |
slides
Resources: Processors, Resources
Workload: Jobs, Tasks, Timing Constraints, Dependencies
Resource Allocation and Scheduling
|
| Scheduling Approaches |
slides
Clock-Driven Schedulers
Priority-Driven Schedulers
Effective Timing Constraints
How to reason about scheduler: EDF and its Optimality
|
| Clock-Driven Scheduling |
slides
Cyclic Executives
Frames, Major Cycles, Selection of Frame Size
|
| Priority-Driven Scheduling |
slides
Static- vs. Dynamic-Priority Schedulers
Measuring Effectiveness of Schedulers: Schedulable Utilization
Optimality of EDF
Schedulable Utilziation of RM and RM
Some Practical Issues
|
| Resource Access Protocols |
slides
What Happened on Mars?
Resources, Critical Sections, Blocking
Priority Inversion, Deadlocks
Priority Inheritance, Priority Ceiling, Ceiling
Priority
Resource Access in ADA
|
| Aperiodic and Sporadic Workload |
slides
Polling Server, Deferrable Server, Sporadic Server
Generalized Processor Sharing
Constant Utilization Server
Total Bandwidth Server
Preemptive Weighted Fair Queueing
|
| Operating Systems |
slides
Scheduling Latency in Linux
Scheduling in Early Solaris: Some Unexpected Issues
Early Windows: Device Driver Issues
|
| Cache Analysis for Real-Time Systems |
slides
Deterministic Cache Analysis
slides
Data Caches in multithreaded environments.
|
| Handling Overload |
slides
Overload Models
Competitive Ratio
Some bounds on competitive ratios
|
| Real-Time Communication |
slides
Real-Time Communication
slides
Scalable real-time communication protocols
|
| Network Calculus |
slides
Network Calculus
|