Schedulers

Duration: 11 min

This video lesson is available to enrolled students.

Enroll to watch — ISRO Scientist/Engineer 'SC'

AI Summary

An AI-generated summary of this video lecture.

This educational video provides a detailed lecture on the concept of schedulers within Operating Systems, specifically focusing on the different types of schedulers and their roles in process management. The instructor begins by defining schedulers as the mechanism that selects processes from various queues for execution. The lecture progresses to distinguish between Long-term, Short-term, and Medium-term schedulers, explaining their specific functions such as admission control, CPU allocation, and swapping. Visual aids, including diagrams of process states and flowcharts, are used to illustrate how processes migrate between main memory and secondary storage. The session concludes with an explanation of the Dispatcher module, highlighting its critical role in context switching and the concept of dispatch latency.

Chapters

  1. 0:00 2:00 00:00-02:00

    The video opens with a slide titled 'Schedulers'. The instructor reads the definition: 'A process migrates among the various scheduling queues throughout its lifetime. The operating system must select, for scheduling purposes, processes from these queues in some fashion. The selection process is carried out by the appropriate scheduler.' He then introduces the 'Types of Schedulers' section. The first type discussed is the 'Long Term Schedulers (LTS)/Spooler'. The slide text explains that in a multiprogramming OS, more processes are submitted than can be executed immediately. Consequently, these processes are 'spooled to a mass-storage device (typically a disk), where they are kept for later execution.' The instructor emphasizes that the long-term scheduler, also called the job scheduler, selects processes from this pool and loads them into memory for execution.

  2. 2:00 5:00 02:00-05:00

    The instructor elaborates on the Long Term Scheduler using a hand-drawn diagram. He sketches a box labeled 'M' representing Main Memory and another labeled 'SM' for Secondary Memory, drawing an arrow to show the flow of processes. He explains that the LTS controls the degree of multiprogramming by bringing processes into main memory. He then transitions to the 'Short Term Scheduler (STS)'. The slide text states: 'The short-term scheduler, or CPU scheduler, selects from among the processes that are ready to execute and allocates the CPU to one of them.' The instructor highlights that this scheduler is invoked frequently, unlike the long-term scheduler, to manage CPU allocation efficiently among ready processes.

  3. 5:00 10:00 05:00-10:00

    The lecture shifts to the 'Degree of Multiprogramming', defined on the slide as 'The number of processes in memory'. The text notes that the long-term scheduler controls this degree. A key concept presented is stability: 'If the degree of multiprogramming is stable, then the average rate of process creation must be equal to the average departure rate of processes leaving the system.' The instructor draws a graph with 'n' on the y-axis to visualize this stability. He then introduces the 'Medium-term scheduler', explaining its role in swapping. The slide text reads: 'The key idea behind a medium-term scheduler is that sometimes it can be advantageous to remove a process from memory... and thus reduce the degree of multiprogramming.' He explains that this process is called swapping, where a process is swapped out to disk and later swapped back in to continue execution. A diagram shows the flow between 'partially executed swapped-out processes', 'ready queue', 'CPU', and 'I/O'.

  4. 10:00 11:14 10:00-11:14

    The final section covers the 'Dispatcher'. The slide defines it as 'the module that gives control of the CPU to the process selected by the short-term scheduler.' The instructor details the functions involved: 'Switching context, switching to user mode, jumping to the proper location in the user program to restart that program.' He stresses that the dispatcher must be fast because it is invoked during every process switch. The concept of 'dispatch latency' is introduced, defined as 'The time it takes for the dispatcher to stop one process and start another running.' The instructor draws a diagram illustrating context switching between two processes to visualize this rapid transfer of control.

The video effectively structures the complex topic of process scheduling by breaking it down into distinct functional modules. It establishes a clear hierarchy starting with the Long-term scheduler for admission, moving to the Short-term scheduler for CPU allocation, and the Medium-term scheduler for memory management via swapping. The lesson culminates with the Dispatcher, the low-level mechanism that executes the actual context switch. This progression helps students understand the lifecycle of a process and the specific OS components responsible for managing its execution state and resource allocation.