CS452 - Real-Time Programming - Spring 2008
Lecture 33 - Scheduling Limits
Questions & Comments
- Projects
Real-time Scheduling
Liquimedia
The Recital Model
- composer - no real-time link to audience necessary
- performer - real-time link to audience
- conductor - coordinates performers in real-time
Design Objectives
- processor partitioning
- between real-time and non-real-time
- This forces programmers to think, which is good.
- between performers
- communication must be possible
- synchronous execution
- fast enough cycle to provide continuity to the user
- predictable execution
- common real-time clock determining cycle less that 10 milliseconds
in length
- modularity
- understandable assignment of resources to tasks
- foreign applications should be allowed
- ultra-fine granularity
- many performers do very little computation per cycle
- overhead must be as close to zero as possible
Design features
- Performers
- atomic execution
- relinquish processor voluntarily, like functions
- Conductor
- executes performers according to schedule prepared outside
real-time by a composer
- Admission control
- Probabilistic estimation of performers running times
- off-line test in composer
- on-line test by conducter: enough time in the cycle according to
estimate?
- Procedures to handle failure
- hard limit to execution by watch-dog timer at cycle boundaries
- on-line test by conducter can postpone execution to next cycle
- scheduler updates schedule based on new
- Asynchronous communication between tasks
- based on conduits
- non-blocking message passing
Return to: