Discussion: Scheduling

15
EE 249, Fall 2002 1 Discussion: Scheduling Haibo Zeng Amit Mahajan

description

Discussion: Scheduling. Haibo Zeng Amit Mahajan. Outline. Problem: multi-program scheduling on a single processor Optimum fixed priority scheduler – rate monotonic scheduling Optimum dynamic scheduling algorithm – deadline driven scheduling Mixed scheduling algorithm. Introduction. - PowerPoint PPT Presentation

Transcript of Discussion: Scheduling

Page 1: Discussion: Scheduling

EE 249, Fall 2002 1

Discussion: Scheduling

Haibo ZengAmit Mahajan

Page 2: Discussion: Scheduling

EE 249, Fall 2002 2

Outline Problem: multi-program scheduling

on a single processor Optimum fixed priority scheduler –

rate monotonic scheduling Optimum dynamic scheduling

algorithm – deadline driven scheduling

Mixed scheduling algorithm

Page 3: Discussion: Scheduling

EE 249, Fall 2002 3

Introduction Environment:

hard-real-time vs. soft-real-time Scheduling:

Preemptive and priority driven Fixed priority vs. dynamic

Page 4: Discussion: Scheduling

EE 249, Fall 2002 4

Assumption of environment A1: The requests for all tasks with

hard deadlines are periodic A2: Task deadline is its next request A3: The tasks are independent A4: Run-time for each task is

constant A5: Nonperiodic tasks have no

deadlines

Page 5: Discussion: Scheduling

EE 249, Fall 2002 5

Outline Problem: multi-program scheduling

on a single processor Optimum fixed priority scheduler –

rate monotonic scheduling Optimum dynamic scheduling

algorithm – deadline driven scheduling

Mixed scheduling algorithm

Page 6: Discussion: Scheduling

EE 249, Fall 2002 6

Rate Monotonic Scheduling According to their request rates only

Higher request rates, higher priorities Optimum fixed priority scheduling:

feasible if any feasible fixed priority assignment exists

Proof: Use the concept critical instant to

analyze the case of scheduling two tasks

Page 7: Discussion: Scheduling

EE 249, Fall 2002 7

RMS (cont’d) Proof:

Use the concept critical instant to analyze the case of scheduling two tasks

Result: assign higher priorities to task with shorter request period; independent of their run-times.

Generalize this result to m tasks

Page 8: Discussion: Scheduling

EE 249, Fall 2002 8

RMS (cont’d) Available Processor Utilization can

be as low as:

Analysis: Right hand side of the inequality is

monotonic decreasing with m

)12(/ /1

1

mm

iii mTCU

%3.692ln)12( /1lim

m

m

m

Page 9: Discussion: Scheduling

EE 249, Fall 2002 9

RMS (cont’d) Question:

Why utilization factor can’t reach 100%? Answer:

Processor idle time: example Question:

How to relax the utilization bound? Answer:

For i=1,2,…,m-1, Better choice: dynamic priority assignment

iim TkT

Page 10: Discussion: Scheduling

EE 249, Fall 2002 10

Outline Problem: multi-program scheduling

on a single processor Optimum fixed priority scheduler –

rate monotonic scheduling Optimum dynamic scheduling

algorithm deadline driven scheduling

Mixed scheduling algorithm

Page 11: Discussion: Scheduling

EE 249, Fall 2002 11

Deadline Driven Scheduling According to their request rates:

earliest deadline first (EDF) No processor idle time before overflow Schedulable iff processor use is less

than 1 Optimum scheduling algorithm:

feasible if any feasible assignment exists

Page 12: Discussion: Scheduling

EE 249, Fall 2002 12

Outline Problem: multi-program scheduling

on a single processor Optimum fixed priority scheduler –

rate monotonic scheduling Optimum dynamic scheduling

algorithm – deadline driven scheduling

Mixed scheduling algorithm

Page 13: Discussion: Scheduling

EE 249, Fall 2002 13

Mixed scheduling algorithm Nice for many applications

Interrupt hardware: fixed priority scheduler

Other software tasks: dynamic priority scheduler

Scheduling algorithm K tasks of shortest periods: RMS Remaining slower paced tasks: EDF

Page 14: Discussion: Scheduling

EE 249, Fall 2002 14

Mixed scheduling algorithm (cont’d) Comparison with RMS and EDF:

Still can’t reach 100% utilization But much better than RMS

Example with 3 tasks T1=3, T2=4, T3=5 C1=1, C2=1, C3=1(rate-monotonic), 2(mixed) RMS: U = 1/3 + 1/4 + 1/5 = 78.3% Mixed scheduling algorithm:

U = 1/3 + 1/4 + 2/5 = 98.3%

Page 15: Discussion: Scheduling

EE 249, Fall 2002 15

Questions Overhead we ignored?

Dynamic scheduling Preemption

If programs are nonterminating, how about the resources?

Are the assumptions about environment always fine? If A1 or A4 don’t hold, what do we do? Is A3 suitable for embedded systems?