OS Scheduler

Multi-Level Feedback Queue (MFQ)

A MQF is scheduling algorithm with multiple priority levels managed using Round Robin queues, where a task is moved between priority levels based on how much processing time it has used.

Very important

Most commercial operating systems, including Windows, MacOS, and Linux, are variations of this scheduling algorithm. (from the OS book)

  • Linux uses the

Priority + round robin

Learned in SE350.

Feedback-Based Scheduling

When a process enters the system, it starts in the highest-priority queue (RQ0). After each preemption, it is demoted to the next lower-priority queue. Short processes complete quickly without descending far, while longer processes drift downward.

Scheduling scheme

  • All queues except the lowest use FCFS
  • Processes in the lowest queue are handled in a Round Robin until they finish

Figure 9.10 shows the process flow through the queues in this multilevel feedback system, where the OS reallocates processor time based on priority changes.