Download presentation
Presentation is loading. Please wait.
Published byJudith Margaret Owen Modified over 6 years ago
1
Scheduling Basic Concepts Ref: Hard Real-Time Computing Systems Giorgio Buttazzo Ref: Real-Time Systems & Software Alan Shaw Processes - Tasks - Threads
2
Real-Time Systems Periodic and Aperiodic Hard & Soft Deadlines Scheduling of Tasks – Static & Dynamic Sharing of Resources and Critical Sections Domino Effect
3
Best Effort Scheduling Algorithms
4
Example Cost Functions What is a “good” system?
5
Metrics for Performance Evaluation What is a “good” system?
6
Attempting to Minimize Lateness
7
Scheduling Anomalies
8
Precedence Example
9
Adding a processor
10
Reducing Computation Times ?
11
Weaken Constraints
12
Resource Constraints
13
Shaw’s notation: Successive events are separated by at least p
The Sporadic process
14
Cyclic Executives for Scheduling Periodic Tasks:
Broken into blocks: Major Cycles (MCT) – shortest period where all task periods align all tasks execute in a major cycle Minor Cycles (mct) – “frames” used to allocate tasks or portions of tasks Example: Say you have two tasks: T1 = (c1, p1, d1) = (1, 2, 2) T2 = (c2, p2, d2) = (1, 3, 3) |xxxxxx______|xxxxxx______|xxxxxx______|…….. |______xxxxxx______|xxxxxx____________|…… MCT = 6 mct = 2 (or 1) Allocations are: {T1,T2} {T1,T2} {T1}, repeat
15
Can this be scheduled? What is MCT? What is mct? What is a schedule?
17
Ada-like implementation of this scheduling.
Clock returns the current time Delay_until x causes the task to block until at least time x
18
Some principles about periodic scheduling:
We assume all processes are released at time t0. Why? The MCT is the least common multiple (lcm) of the periods. Why? The mct must divide the MCT. Why? The mct must be >= the longest computation block. Why? mct <= di for all I = 1,…, n mct + (mct - gcd(mct, pi)) <= di
19
Home work #1: (Lecture 4/03)
From Buttazzo: From Shaw: Exercises 2.2: 1, 2, 3, 5, 6
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.