Documente Academic
Documente Profesional
Documente Cultură
EE-522: Lecture 3
Tasks Classification
Di (1)=2050
di=50 ei=8
pi=80
Ti Ti
Φi=2000
(1) (2)
0
Arrival or activation of Ti (1)
3 EE-522: Embedded Systems 1/28/2019
© Adeel Pasha, LUMS, Spring’19
Uniprocessor
Preemptive Scheduling
Processor Utilization
ui = avg. time for which a task Ti executes on processor
“U” can be at most 1 for uniprocessor system
n
ei
U=
ei
ui =
pi i =1 pi
Sources of Jitter
In arrival?
Imprecise clocks, network congestion or signal delays
In completion?
Scheduling delays after arrival
Event-Driven
Simple Priority Based
Rate Monotonic Analysis (RMA)
Earliest Deadline First (EDF)
Hybrid
Round Robin
Clock-Driven Schedulers
Clock-Driven Schedulers
Offline or Static Schedulers
Table-Driven
Cyclic
Pros:
Very Little Timing Overhead
Cons:
Cannot handle sporadic or aperiodic tasks satisfactorily
Table-Driven Scheduler
Table-Driven Schedulers
Schedule Table
Pre-computed schedule is stored in a table
Programmer can choose his/her own task schedule,
store it and use it
Size of the table?
Answer is Major Cycle
Major Cycle = LCM*(p1, p2, p3, … ,pn) (also called hyperperiod)
Example:
T1 (e1=5ms, p1=20ms)
T2 (e2=20ms, p2=50ms)
T3 (e3=30ms, p3=100ms)
* LCM: Least Common Multiple
Major Cycle=?
Task-1
Major Cycle (M)/ Task-2
Hyperperiod (H) Task-3
Task-4
Table-Driven: Implementation