=
=
n
i
i
u U
1 .here B K U K =
A scheduling algorithm can #easi$ly schedule any
system o# periodic tasks on a processor i# U is e7ual to
or less than the maximum schedula$le utili%ation o#
the algorithm2 UAL
o 4# UAL > =2 the algorithm is optimal
Why is kno.ing o# UAL importantI 4t gi"es a
schedula$ility test2 .here a system can $e "alidated
$y sho.ing that U K UAL
Schedula+le ,tili-ation& %!
1heorem+ a system o# independent preempta$le
periodic tasks .ith Di > pi can $e #easi$ly scheduled
on one processor using EDF i# and only i# U K =
o U!D" > = #or independent2 preempta$le periodic tasks .ith
Di > pi
LExpected since EDF pro"ed optimal
in lecture 3 D see the $ook #or proo#M
o -orollary+ result also holds i# deadline longer than period+
U!D" > = #or independent preempta$le periodic tasks .ith Di
N pi
Notes+
o Result is independent o# i
o Result can also $e sho.n to apply to strict !S1
Schedula+le ,tili-ation& %!
What happens i# Di O pi #or some iI 1he test doesn)t
.orkH
o EFgF
Po.e"er2 there is an alternati"e test+
o 1he density o# the task2 Ti2 is i > ei 6 min8Di2 pi9
o 1he density o# the system is > = Q A Q H Q n
o 1heorem+ A system T o# independent2 preempta$le periodic
tasks can $e #easi$ly scheduled on one processor using
ED1 i# K =F
Note+
o 1his is a su5cient condition2 $ut not a necessary condition
D iFeF a systemis guaranteed to $e #easi$le i# K =2 $ut
might still $e #easi$le i# C = 8.ould ha"e to run the
exhausti"e simulation to pro"e9
Schedula+le ,tili-ation& %!
Po. can you use this in practiceI
o Assume using EDF to schedule multiple periodic tasks2
kno.n execution time #or all 0o$s
-hoose the periods #or the tasks such that the
schedula$ility test is met
Example+ a simple digital controller+
o -ontrol-la. computation task2 T=2 takes e= > R ms2 sampling
rate is =BB P%
8iFeF p= > =B ms9
u= is BFR
the system is guaranteed to $e schedula$le
o Want to add a $uilt-in sel# test task2 TA2 taking 5Bms - .ill
the system still .orkI
Schedula+le ,tili-ation of #$
1heorem+ a system o# n independent preempta$le
periodic tasks .ith Di > pi can $e #easi$ly scheduled
on one processor using R& i# and only i# U K n8A=6n D
=9
o U#$8n9 > n8A=6n D =9
o For large n ln A
8iFeF n BF(S3=?T=RB5(H9
o L*roo# in $ook -
complicatedGM
o U K U#$8n9 is a su5cient2 $ut not necessary2 condition D iFeF
a #easi$le rate monotonic schedule is guaranteed to exist i#
U K U#$8n92 $ut might still $e possi$le i# U C U#$8n9
Schedula+le ,tili-ation of #$
What happens i# the relati"e deadlines #or tasks are
not e7ual to their respecti"e periodsI
Assume the deadline is some multiple o# the period+
Dk > pk
4t can $e sho.n that+
Schedula+le ,tili-ation of #$
Summary
Key points+
Di:erent priority scheduling algorithms
o Earliest deadline rst2 least slack time2 rate monotonic2
deadline monotonic
o Each has di:erent properties2 suited #or di:erent scenarios
Scheduling tests2 concept o# maximum schedula$le
utili%ation
o Examples #or di:erent algorithms
Next lecture+ practical #actors2 more schedula$ility
testsH