ENEE 642:Software Systems Implementation

Spring 2000, Prof. D. Stewart

Handout #7
Introduction to Real-Time Scheduling Theory

Hard Real-Time: Missing a deadline results in the failure of performance degradation of the system.

Soft Real-Time: The system will properly perform as long as deadlines are met most of the time. Missing a few deadlines will not affect the system.

Transient Overload: The state of a real-time system when at least one task will fail because of a lack of CPU time available.

Guaranteed Task: A task is said to be guaranteed if it will always meet its deadlines, even in a transient overload situation.

Task Set: The set of all tasks which may execute on the same processor.

Critical Task Set: The set of guaranteed tasks. It must be a subset of the task set

Task Utilization: percentage of CPU utilization required by a task, in the worst case. Utilization of task i is
Ui = Ci/Ti , where Ti = period of task i, and Ci = worst case execution time of task i.

Total utilization: U = Σ Ui

Schedulable bound: maximum worst-case utilization for which a task set will not miss any deadlines. The value is scheduler dependent; the maximum value is 100%.

Scheduling Algorithms

Fixed Priority Scheduling: Rate Monotonic Algorithm

Problems with Rate Monotonic Algorithm

Dynamic Scheduling

Advantages/Disadvantages of Fixed and Dynamic Scheduling

Advantage: A critical set can be specified, thus tasks can be selectively chosen during a transient overload

Disadvantage: Worst case schedulable bound is 69% (average case 88%)

Disadvantage: Deadline Failures are difficult to detect

Advantage: Schedulable bound is 100%

Advantage: Deadline Failures can be detected

Disadvantage: Cannot specify a critical task set, thus no control of which tasks fail during a transient overload

Disadvantage: Require more overhead during a reschedule

Communication and Synchronization