0% found this document useful (0 votes)
114 views23 pages

Cpre 458/558: Real-Time Systems: Scheduling Results & Rms and Edf Schedulers

This document discusses scheduling algorithms for real-time systems. It provides results and comparisons of Rate Monotonic Scheduling (RMS) and Earliest Deadline First (EDF) scheduling algorithms. RMS assigns fixed priorities based on task periods, while EDF uses dynamic priorities based on task deadlines. EDF offers higher schedulability than RMS but is more difficult to implement. The document also covers multiprocessor scheduling results, anomalies, and examples of RMS and EDF schedulers.

Uploaded by

innoraj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
114 views23 pages

Cpre 458/558: Real-Time Systems: Scheduling Results & Rms and Edf Schedulers

This document discusses scheduling algorithms for real-time systems. It provides results and comparisons of Rate Monotonic Scheduling (RMS) and Earliest Deadline First (EDF) scheduling algorithms. RMS assigns fixed priorities based on task periods, while EDF uses dynamic priorities based on task deadlines. EDF offers higher schedulability than RMS but is more difficult to implement. The document also covers multiprocessor scheduling results, anomalies, and examples of RMS and EDF schedulers.

Uploaded by

innoraj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 23

CprE 458/558: Real-Time Systems

Scheduling Results &


RMS and EDF Schedulers

CprE 458/558: Real-Time Systems (G. Manimaran) 1


Understanding Fundamentals
• Understanding the boundary between
polynomial and NP-complete problems
can provide insights into developing
useful heuristics.

• Understanding the algorithms that


achieve some of the polynomial results
can again provide basis for developing
heuristics.

CprE 458/558: Real-Time Systems (G. Manimaran) 2


Understanding Fundamentals (cont.)

• Understanding the fundamental


limitations of on-line algorithms will help
designers avoid scheduling anomalies
and misconceptions.

CprE 458/558: Real-Time Systems (G. Manimaran) 3


Performance Metrics
• Minimizing Schedule Length.

• Minimizing Sum of Completion Times.

• Maximizing Weighted Sum of Values (Useful in


RT systems).

• Minimizing the Maximum Lateness (useful in


RT systems).

CprE 458/558: Real-Time Systems (G. Manimaran) 4


Uniprocessor - some results
• One processor, Non-preemptive, Minimizing
the Max. Lateness (Polynomial).

• One processor, Non-preemptive, release time


constraint, Minimizing the Max. Lateness (NP-
hard).

• One processor, Preemptive, release time


constraint, Minimizing the Max. Lateness
(Polynomial).

CprE 458/558: Real-Time Systems (G. Manimaran) 5


Uniprocessor - more results
• Result: When there are mutual exclusion
constraints, it is impossible to find a totally on-
line optimal scheduler.

• Result: The problem of deciding whether it is


possible to schedule a set of periodic tasks
that use semaphores only to enforce mutual
exclusion in NP-hard.

• Overload Result: There does not exist an on-


line scheduling algorithm with a competitive
factor greater than 0.25. (this is for general
case: arbitrary number of processors).

CprE 458/558: Real-Time Systems (G. Manimaran) 6


Multiprocessor – Some Results
• Result: The multiprocessor scheduling on P
processors with task preemption allowed and
with minimization of the number of late tasks
is NP-hard.

• Result: For two or more processors, no


deadline scheduling algorithm can be optimal
without complete a prior knowledge of
deadlines, computation times, and task ready
times.

CprE 458/558: Real-Time Systems (G. Manimaran) 7


Multiprocessor – more results

• EDF is not optimal in the multiprocessor case.

• No on-line scheduling algorithm can guarantee


a cumulative value greater than one half for
the dual processor case. (A special case of
overload result)

CprE 458/558: Real-Time Systems (G. Manimaran) 8


Multiprocessor; Single Deadline;
Non-premptive

NP-completeness is mainly due to non-uniform


task execution time and resource constraints.
CprE 458/558: Real-Time Systems (G. Manimaran) 9
Multiprocessing Anomalies
• Assume that a set of tasks is optimally
schedulable on a multiprocessor with some
priority order, a fixed number of processors,
fixed computation times, and precedence
constraints.

• Result: For the stated problem, changing the


priority list, increasing the number of
processors, reducing the computation times,
or weakening the precedence constraints can
increase the schedule length.

CprE 458/558: Real-Time Systems (G. Manimaran) 10


Multiprocessing Anomalies (cont.)

• These anomalies may cause some of the


already guaranteed tasks to miss their
deadlines.

• It can be shown that run-time anomalies


cannot occur in a multiprocessor schedule
when the tasks are independent.

CprE 458/558: Real-Time Systems (G. Manimaran) 11


Run-time Anomaly
Run-time anomaly may occur when the actual
computation time of a task differs from its
worst case computation time in a non-
preemptive multiprocessor schedule with
resource constraints.

A processor is said to be work conserving if it is


never idle when there is a task to execute. Any
work conserving scheme may lead to run-time
anomaly.

CprE 458/558: Real-Time Systems (G. Manimaran) 12


Run-time Anomaly – Example
Example: Ti=(ai ,ci ,di )

T1=(0,20,22); T2=(0,12,25); T3=(10,8,26);T4=(8,10,30).

T3 and T4 have resource conflicts;


Actual computation time of T1 is 10.

CprE 458/558: Real-Time Systems (G. Manimaran) 13


Priority-driven Preemptive Scheduling
Assumptions & Definitions
• Tasks are periodic
• No aperiodic or sporadic tasks
• Job (instance) deadline = end of period
• No resource constraints
• Tasks are preemptable
C’i
• Laxity of a Task
t di
• Ti = di – (t + ci’)
where di: deadline; Laxity

t : current time;
ci’ : remaining computation time.
CprE 458/558: Real-Time Systems (G. Manimaran) 14
Rate Monotonic Scheduling (RMS)
• Schedulability check (off-line)
- A set of n tasks is schedulable on a
uniprocessor by the RMS algorithm if the
processor utilization (utilization test):

The term n(21/n -1) approaches ln 2,


(0.69 as n  ).
- This condition is sufficient, but not necessary.
CprE 458/558: Real-Time Systems (G. Manimaran) 15
RMS (cont.)
• Schedule construction (online)
- Task with the smallest period is assigned the
highest priority.
- At any time, the highest priority task is
executed.

RMS is an optimal preemptive scheduling


algorithm with fixed priorities.
Static/fixed priority algorithm assigns the same
priority to all the jobs (instances) in each task.

CprE 458/558: Real-Time Systems (G. Manimaran) 16


RMS Scheduler -- Example 1
Task set: Ti = (ci, pi)
T1 = (2,4) and T2 = (1,8)

Schedulability check:
2/4 + 1/8 = 0.5 + 0.125 = 0.625 ≤ 2(√2 -1) = 0. 82

Active Active
Active Tasks : Tasks :
Tasks : {T2} {T1}
{T1, T2}

T11 T21 T12

0 2 3 4 6 8

CprE 458/558: Real-Time Systems (G. Manimaran) 17


RMS scheduler -- Example-2
Task set: Ti = (ci, pi)
T1 = (2,4) and T2 = (4,8)
Schedulability check:
2/4 + 4/8 = 0.5 + 0.5 = 1.0 > 2(√2 -1) = 0. 82

Active Active Active


Active Tasks : Tasks : Tasks :
Tasks : {T2} {T2, T1} {T2}
{T1, T2}

T11 T21 T12 T21

0 2 3 4 6 8

Some task sets that FAIL the utilization-based schedulability test are also
schedulable under RMS  We need exact analysis (necessary & sufficient)

CprE 458/558: Real-Time Systems (G. Manimaran) 18


Earliest Deadline First (EDF)
• Schedulability check (off-line)
- A set of n tasks is schedulable on a
uniprocessor by the EDF algorithm if the
processor utilization.

• This condition is both necessary and sufficient.

- Least Laxity First (LLF) algorithm has the


same schedulability check.
CprE 458/558: Real-Time Systems (G. Manimaran) 19
EDF/LLF (cont.)
• Schedule construction (online)
– EDF/LLF: Task with the smallest
deadline/laxity is assigned the highest
priority.
– At any time, the highest priority task is
executed.

EDF/LLF is an optimal preemptive scheduling


algorithm with dynamic priorities.

Dynamic priority algorithm assigns different


priorities to the individual jobs (instances) in
each task.

CprE 458/558: Real-Time Systems (G. Manimaran) 20


EDF scheduler -- Example
Task set: Ti = (ci, pi, di)
T1 = (1,3,3) and T2 = (4,6,6)

Schedulability check:
1/3 + 4/6 = 0.33 + 0.67 = 1.0

Active Active Active


Active Tasks : Tasks : Tasks :
Tasks : {T2} {T2, T1} {T1}
{T1, T2}

T11 T21 T21 T12

0 1 3 5 6

Unlike RMS, Only those task sets which pass the schedulability test are
schedulable under EDF

CprE 458/558: Real-Time Systems (G. Manimaran) 21


RMS vs. EDF/LLF
• RMS is an optimal preemptive scheduling
algorithm with fixed priorities.

• EDF/LLF is an optimal preemptive scheduling


algorithm with dynamic priorities.

• RMS schedulability properties can be


analyzed; rich theory exists and it is widely
used in practice.

• EDF/LLF offers higher schedulability than


RMS, but it is more difficult to implement.
CprE 458/558: Real-Time Systems (G. Manimaran) 22
RMS & EDF -- Example
Process Period, T WCET, C
T1 5 2
EDF schedule T2 7 4

T1
0 5 10 15 20 25 30 35

T2
0 7 14 21 28 35

RMS schedule

T1
0 5 10 15 20 25 30 35
Deadline miss

T2
0 7 14 21 28 35
CprE 458/558: Real-Time Systems (G. Manimaran) 23

You might also like