L4 Flashcards
What is task scheduling?
The decision of when, in which order and where different jobs must execute
Why and how scheduling?
We must have some task execution ordering mechanism
Where do the timing constraints come from?
From requirements (e.g. open the door within x ms)
How do we guarantee timing constraints?
Through schedulability (and analysis)!
- based on appropriate task parameters (e.gg periods, deadlines, priorities, etc)
CPU Utilization
U = C1/T1 + C2/T2 + ….<= 1
Scheduling approaches
Offline scheduling
- performed before system deployment
- generates a “timetable” that efindes the run-time execution
- also called static or pre-run-time scheduling
Online scheduling
- scheduling decision performed during the system execution
- based on task priorities
- also called dynamic or run-time scheduling
Event-triggered and Time-triggered real-time-systems
Event-triggerd
- online scheduling
Time-triggered
- offline scheduling
RM, DM, EDF, PIP
RM: Rate Monotonic
DM: Deadline Monotonic
EDF: Earliest Deadline First
PIP: Priority Inheritance Protocol
Rate Monotonic Schedulability condition:
U <= n(2⁽¹/n⁾-1)