How is CPU Scheduling done in Multimedia systems?
We distinguished between soft real-time systems and hard real-time systems. Soft real-time systems simply give scheduling priority to critical processes. A soft real-time system ensures that a critical process will be given preference over a noncritical process but provides no guarantee as to when the critical process will be scheduled.
A typical requirement of continuous media, however, is that data must be delivered to a client by a certain deadline; data that do not arrive by the deadline are unusable. Multimedia systems thus require hard real-time scheduling to ensure that a critical task will be serviced within a guaranteed period of time. Another scheduling issue concerns whether a scheduling algorithm uses static priority or dynamic priority—a distinction we first discussed in Chapter 5.
The difference between the two is that the priority of a process will remain unchanged if the scheduler assigns it a static priority. Scheduling algorithms that assign dynamic priorities allow priorities to change over time. .Most operating systems use dynamic priorities when scheduling non-real-time tasks with the intention of giving higher priority to interactive processes.
However, when scheduling real-time tasks, most systems assign static priorities, as the design of the scheduler is less complex. Several of the real-time scheduling strategies discussed in Section 19.5 can be used to meet the rate and deadline QoS requirements of continuous-media applications.