1 / 21

CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1)

CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1). Klara Nahrstedt Spring 2011. Administrative. MP3 is out MP3 Help Session Wednesday, April 13, 7-8pm in 1304 Siebel Center mi-clicker discussion. CPU Process/Thread Scheduling. Maintain many programs in memory

kina
Download Presentation

CS 414 – Multimedia Systems Design Lecture 31 – Multimedia OS (Part 1)

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. CS 414 – Multimedia Systems DesignLecture 31 – Multimedia OS (Part 1) Klara Nahrstedt Spring 2011 CS 414 - Spring 2011

  2. Administrative • MP3 is out • MP3 Help Session • Wednesday, April 13, 7-8pm in 1304 Siebel Center • mi-clicker discussion CS 414 - Spring 2011

  3. CPU Process/Thread Scheduling • Maintain many programs in memory • Determine how to best schedule them • Requires information about the processes and an understanding of the system goals • Switch among processes rapidly so each user perceives direct ownership of system CS 414 - Spring 2011

  4. CPU Scheduling Evaluation Criteria • Throughput: processes completed per unit time • Turnaround: from submission to termination • Wait: time waiting in the ready queue • Response: from user request to system response • Utilization: how busy the CPU is over time • Want predictable system behavior CS 414 - Spring 2011

  5. Scheduling Algorithms • FCFS • Shortest Job First • Priority scheduling • Round-robin • Multi-level queue • Rate monotonic • Earliest deadline first For General Purpose Process CPU Scheduling For RT/Multimedia Process CPU Scheduling CS 414 - Spring 2011

  6. Real-time/Multimedia Processing Requirements • Need to process continuous multimedia data • Processing occurs in predetermined, usually periodic intervals • Processing must be completed by certain deadlines • Need RT process manager • Perform admission control • Determine schedule • Perform reservation • Schedule to give processing guarantees CS 414 - Spring 2011

  7. RT/Multimedia Processing Requirements • Main Problem: How to find a feasible schedule? • Conflicting Goals/Problems: • How do we schedule multimedia (RT) processes so that • non-RT processes do not starve when RT process is running • RT process is not subject to priority inversion CS 414 - Spring 2011

  8. Model in RT Scheduling • Task (Process) – schedulable unit • Task characterized by • Timing constraints • Resource requirements • Assumptions • Periodic tasks without precedence relations • Time constraints • s – task starting point • e – task processing time • d – task deadline • p – task period CS 414 - Spring 2011

  9. Periodic Constant Processing Time Tasks • Example Usage Pattern: Peak Processing Time=10ms Period = 100ms 0 10 110 210 100 200 Time(ms) CS 414 - Spring 2011

  10. Periodic Variable Processing Time Tasks • Example Usage Pattern: Period = 100ms Peak Processing Time = 30ms Sustainable Processing Time = 15ms Burst Tolerance = 7ms 0 15 120 210 100 200 Time(ms) CS 414 - Spring 2011

  11. Model of RT Scheduling • Congestion avoidance deadline • If period at (k-1) step is equal to ready (start) time of period k • Tasks: preemptive vs. non-preemptive • Main goal of RT Scheduling: • find feasible schedule of all periodic tasks so that newly arriving task and all previous admitted tasks finish processing in every period according to their deadline CS 414 - Spring 2011

  12. Model of RT Scheduling • Must have Schedulability (Admission) Test for RT tasks • What is the performance metric for RT tasks? • Guarantee ratio := number of guaranteed tasks/total number of tasks • Process utilization (U): CS 414 - Spring 2011

  13. Scheduling Policies of RT Tasks • Rate- Monotonic Scheduling (RMS) • Designed/proved by C.L. Liu and Layland 1973 • Policy: task with highest rate has highest priority • Static and optimal, priority-driven • Optimal means that there no other static algorithm that is able to schedule a RT task which can’t be scheduled by RMS algorithm • Assumptions: • Tasks are periodic • Each task must complete before next request • All tasks are independent • Run-time of each task request is constant • Any non-periodic task has no required deadline CS 414 - Spring 2011

  14. Example of RMS CS 414 - Spring 2011

  15. Scheduling Policies for RT Tasks • Earliest Deadline First (EDF) Policy • Optimal dynamic algorithm • Produces valid schedule if one exists • Complexity O(n2) • Upper bound of process utilization 100% • Policy: task with earliest deadline has highest priority CS 414 - Spring 2011

  16. Example of EDF CS 414 - Spring 2011

  17. Comparison between RMS and EDF CS 414 - Spring 2011

  18. Admission Control (for preemptive tasks) • Schedulability test for RMS • Schedulability test for EDF CS 414 - Spring 2011

  19. Example • Consider the following preemptive RT tasks and their characteristics • T1: p1 = 50ms, e1=10ms • T2: p2 = 100ms, e2=20ms • T3: p3 = 200ms, e3=50ms • T4: p4 = 100ms, e4=20ms • Are these tasks schedulable via RMS? • If yes, what is the feasible schedule? • Are these tasks schedulable via EDF? • If yes, what is the feasible schedule? CS 414 - Spring 2011

  20. Preemptive vs. Non-preemptiveScheduling CS 414 - Spring 2011

  21. Conclusion RMS and EDF are basic policies for real-time scheduling policies Most of the Real-time tasks are guided by these scheduling policies CS 414 - Spring 2011

More Related