lec10_dynamicpriority1 - Priority-Driven Scheduling of...

Info iconThis preview shows pages 1–6. Sign up to view the full content.

View Full Document Right Arrow Icon
1 Priority-Driven Scheduling of Periodic Tasks - Chapter 6 – (Dynamic Priority (1)) Overview •ED F – optimality (Done!) – schedulable utilization bound – time demand analysis
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
2 Dynamic-priority scheduling • How to assign Priorities? – we already proved that assigning priority based on the absolute deadline is optimal • How to check the schedulability? Utilization Bound Check • For a given algorithm A, we are interested in finding its schedulability bound (e.g., the schedulability bound of EDF is 1)
Background image of page 2
3 Processor utilization factor • More formally, we want to find the least upper bound U lub (A) of the processor utilization factor ) , ( min ) ( lub A U A U ub Γ = Γ For example, considering the RM algorithm, U lub (RM) = n (2 1/n –1) . Now, we know how it can be derived. Quiz: what is the value of U ub ( Γ , EDF) ? Schedulability of EDF • Theorem: given a set of n (independent) periodic tasks, each deadline will be met if and only if the total utilization of the tasks is no greater than 1. That is: • How in the world can we prove that? 12 ... 1 n n e ee pp p ++ +≤
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
4 Proving Steps • Necessity: Schedulable Total Utilization 1 – Total Utilization > 1 Not Schedulable: easy! – How prove? • Sufficiency: Total Utilization 1 Schedulable – Prove that if a job misses deadline, then Total Utilization >1 – Two cases •E a s y C a s e • Difficult Case Counting Execution Times (Easy Case) At the deadline of T 22 at t , the deadline of T 13 is before t and the total execution of each task can be expressed neatly Suppose a job (T 22 ) misses the deadline “sum of executions prior to t ”> t Hint: We know that the completion time of a job is the sum of its own execution time plus the interference due to other jobs with earlier deadline. So let’s count them. We need to count all the executions of jobs prior to t . The execution time of jobs with deadlines prior to t is easy to count. So are the execution times of jobs of T 2 by time t . θ 1 t 0 0 2 2 2 1 1 1 1 : ; : e p t T e p t T θ
Background image of page 4
5 Getting a foothold If a job (T22) misses the deadline “sum of executions prior to t ”> t θ 1 t 0 0 1 " prior to executions of Sum " 2 2 1 1 2 2 1 1 2 2 1 1 2 2 1 1 1 > + > + > + > + = p e p e t e p t e p t t e p t e p t t e p t e p t t θ If a job (T22) misses the deadline Total Utilization > 1 Counting Execution Times (Difficult Case) When T 22 is sandwiched by the release time and deadline of T 12
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
Image of page 6
This is the end of the preview. Sign up to access the rest of the document.

Page1 / 15

lec10_dynamicpriority1 - Priority-Driven Scheduling of...

This preview shows document pages 1 - 6. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online