1 / 37

Aperiodic Task Scheduling for Hard Real-Time Systems

Aperiodic Task Scheduling for Hard Real-Time Systems. There are different types of tasks. Some background information:. Execution time: Period: Utilization… for the i - th task: for the system: (“Ideal” system utilization is 70% 1 .)

jihan
Download Presentation

Aperiodic Task Scheduling for Hard Real-Time Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Aperiodic Task Scheduling forHard Real-Time Systems

  2. There are different types of tasks.

  3. Some background information: • Execution time: • Period: • Utilization… for the i-th task: for the system: (“Ideal” system utilization is 70%1.) • Response Time = (completion) - (request)

  4. You have tasks – now schedule them! • Meet hard timing deadlines • High schedulable utilization • Fast average response times • Transient overload stability

  5. Related WorkScheduling Periodic Tasks

  6. Rate Monotonic Scheduling Shorter Period Higher Priority • guarantees schedulability • is very likely schedulable • Static priority  low scheduling overhead

  7. Related WorkScheduling Aperiodic Tasks

  8. Background Servicing Task

  9. Polling Task

  10. Background servicing and polling tasks have drawbacks. • Not-so-great response time • Wasted execution time • What if we could respond to aperiodic tasks right away, and preserve execution time?

  11. Background servicing and polling tasks have drawbacks. • Not-so-great response time • Wasted execution time • What if we could respond to aperiodic tasks right away, and preserve execution time? Bandwidth Preserving Algorithms

  12. Deferrable Server (DS)

  13. Priority Exchange (PE) • If aperiodic tasks are pending, service them • If not, server and highest priority periodic task exchange priorities • Aperiodic requests preempt periodic tasks in the event of a priority tie

  14. Both DS and PE algorithms have benefitsover the other. • DS easier to understand and implement • “Server Size” – server’s utilization “Periodic Scheduling Bound” PE: DS: • Given , PE has better Given , PE has better

  15. We want the benefits of both DS and PE in one algorithm.

  16. We want the benefits of both DS and PE in one algorithm. Sporadic Server Algorithm (SS)

  17. Sporadic ServerSoft Deadline Aperiodic Tasks

  18. Vocabulary • = currently executing priority level = a priority level  is active  is idle • = time at which server’s execution time is replenished (for a given )

  19. set when active (if time was consumed) • Replenishment amount set when idle or server depleted

  20. set when active (if time was consumed) • Replenishment amount set when idle or server depleted

  21. set when active (if time was consumed) • Replenishment amount set when idle or server depleted

  22. This all sounds great, but how do you schedule a sporadic server? • Rate-monotonic algorithm requires that ready-to-execute tasks execute immediately Server Server

  23. This all sounds great, but how do you schedule a sporadic server? • Rate-monotonic algorithm requires that ready-to-execute tasks execute immediately Server Server

  24. Theorem 2: Schedule it like a periodic task. • Sporadic server periodic task w/ same • Server unconsumed  delayed request • Server completely consumed  normal • Server partially consumed  combination Theorem 1: (see board) “Critical Instant” = t(longest response time) “Critical Zone” = t(complete) – critical instant Schedulable = for all tasks, critical zone < deadline

  25. 1. Sporadic server periodic task w/ same Lemma 1: A task set schedulable with is also schedulable if is split into tasks whose C’s sum to and each with T equal to . Lemma 2: If in a task set is replaced with a sporadic server with identical requests, the server’s behavior will be the same as .

  26. 2. Server unconsumed  delayed request • (see board) • Delayed periodic request is OK! • Doesn’t make critical zones longer • All tasks remain schedulable

  27. 3. Server completely consumed  normal • (see board) • Same as Lemma 2 – consume and replenish! • All tasks remain schedulable

  28. 4. Server partially consumed  combination • (see board) • We can split server in two by Lemma 2 • One part is just a normal period • One part is a period with a delay • All tasks remain schedulable

  29. Sporadic ServerSporadic Tasks

  30. Our sporadic server algorithm doesn’t necessarily work for sporadic tasks.

  31. Assign sporadic servers priorities by deadline – not rate.

  32. How can we check schedulabilityof combined deadline- & rate- monotonic servers?

  33. Summary • Soft deadline aperiodic tasks share RM SS • Sporadic tasks each have dedicated DM SS • SS algorithm • Easy to implement (like DS) • Larger server size (like PE) • Good response time (like DS and PE) • SS works for soft- and hard-deadline aperiodic tasks • We can test schedulability for all task sets

  34. Acknowledgements 1: Real-Time Systems Design and Analysis, 3rded, Phillip A. Laplante

More Related