0% found this document useful (0 votes)
102 views

Real Time Scheduling Algorithm

This document discusses real-time scheduling algorithms. It introduces real-time systems and tasks, and describes two common scheduling algorithms: Rate Monotonic (RM) and Earliest Deadline First (EDF). RM assigns static priorities based on task periods, while EDF uses dynamic priorities based on task deadlines. The document provides examples of how each algorithm schedules tasks and analyzes their schedulability properties, utilization bounds, and response time calculation. It notes that EDF can schedule any task set that is schedulable, while RM has simpler implementation but lower utilization bounds.

Uploaded by

amar
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
102 views

Real Time Scheduling Algorithm

This document discusses real-time scheduling algorithms. It introduces real-time systems and tasks, and describes two common scheduling algorithms: Rate Monotonic (RM) and Earliest Deadline First (EDF). RM assigns static priorities based on task periods, while EDF uses dynamic priorities based on task deadlines. The document provides examples of how each algorithm schedules tasks and analyzes their schedulability properties, utilization bounds, and response time calculation. It notes that EDF can schedule any task set that is schedulable, while RM has simpler implementation but lower utilization bounds.

Uploaded by

amar
Copyright
© © All Rights Reserved
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 24

Real-Time Scheduling

Outline
Real-time systems
Real-time scheduling algorithms
Fixed-priority algorithm (RM)
Dynamic-priority algorithm (EDF)

Real-Time Workload
Job (unit of work)
a computation, a file read, a message transmission, etc

Attributes
Resources required to make progress
Timing parameters
Released

Execution time

Absolute
deadline

Relative deadline

Real-Time Task
Task : a sequence of similar jobs
Periodic task (p,e)

Its jobs repeat regularly


Period p = inter-release time (0 < p)
Execution time e = maximum execution time (0 < e < p)
Utilization U = e/p

10

15

Schedulability
Property indicating whether a real-time system (a set
of real-time tasks) can meet their deadlines

(4,1)
(5,2)
(7,2)
5

Real-Time Scheduling
Determines the order of real-time task executions
Static-priority scheduling
Dynamic-priority scheduling

(4,1)
(5,2)
(7,2)

10

15

10

15
6

RM (Rate Monotonic)

Optimal static-priority scheduling


It assigns priority according to period
A task with a shorter period has a higher priority
Executes a job with the shortest period

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
7

RM (Rate Monotonic)
Executes a job with the shortest period

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
8

RM (Rate Monotonic)
Executes a job with the shortest period

Deadline Miss !
T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
9

Response Time
Response time
Duration from released time to finish time

T1 (4,1)
T2 (5,2)
T3 (10,2)

10

15

10

15
10

Response Time
Response time
Duration from released time to finish time

Response Time
T1 (4,1)
T2 (5,2)
T3 (10,2)

10

15

10

15
11

Response Time
Response Time (ri) [Audsley et al., 1993]

ri
ri ei
ek

TkHP (Ti ) pk

HP(Ti) : a set of higher-priority tasks than Ti

T1 (4,1)
T2 (5,2)
T3 (10,2)

10

10

12

RM - Schedulability Analysis
Real-time system is schedulable under RM
if and only if ri pi for all task Ti(pi,ei)

13

RM Utilization Bound
Real-time system is schedulable under RM if
Ui n (21/n-1)
Liu & Layland,
Scheduling algorithms for multi-programming in a
hard-real-time environment, Journal of ACM, 1973.

14

RM Utilization Bound
Real-time system is schedulable under RM if
Ui n (21/n-1)
Example: T1(4,1), T2(5,1), T3(10,1),
Ui = 1/4 + 1/5 + 1/10
= 0.55
3 (21/3-1) 0.78
Thus, {T1, T2, T3} is schedulable under RM.
15

RM Utilization Bound
Real-time system is schedulable under RM if
Ui n (21/n-1)

16

EDF (Earliest Deadline First)


Optimal dynamic priority scheduling
A task with a shorter deadline has a higher priority
Executes a job with the earliest deadline

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
17

EDF (Earliest Deadline First)


Executes a job with the earliest deadline

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
18

EDF (Earliest Deadline First)


Executes a job with the earliest deadline

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
19

EDF (Earliest Deadline First)


Executes a job with the earliest deadline

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
20

EDF (Earliest Deadline First)


Optimal scheduling algorithm
if there is a schedule for a set of real-time tasks,
EDF can schedule it.

T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
21

Processor Demand Bound


Demand Bound Function : dbf(t)
the maximum processor demand by workload over any
interval of length t

t
T1 (4,1)
T2 (5,2)
T3 (7,2)

10

15

10

15
22

EDF Utilization Bound


Real-time system is schedulable under EDF if and only
if
Ui 1
Liu & Layland,
Scheduling algorithms for multi-programming in a
hard-real-time environment, Journal of ACM, 1973.

23

RM vs. EDF
Rate Monotonic

Simpler implementation, even in systems without explicit


support for timing constraints (periods, deadlines)
Predictability for the highest priority tasks

EDF

Full processor utilization


Misbehavior during overload conditions

24

You might also like