{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

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 • EDF 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 Document Right 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? 1 2 1 2 . . . 1 n n e e e p p p + + +
Background image of page 3

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

View Full Document Right 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 Easy Case 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
Background image of page 5

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

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

{[ snackBarMessage ]}