Difference between Multilevel Queues and Multilevel Feedback Queues

By | September 22, 2021

Difference between Multilevel Queues (MLQ) and Multilevel Feedback Queues (MFQ): The method separates the ready queue into various separate queues is Multilevel Queue

Multi-level Queue Scheduling (MLQ)

  • Multilevel Queue Scheduling classifies the processes according to their types. For example, a multilevel queue scheduling algorithm makes a common division between the interactive processes (foreground) and batch processes (background). These two processes have different response times, so they have different scheduling requirements. Also, the interactive process has higher priority than the batch process.
  • In this scheduling, ready queue is divided into various queues that are called subqueues. A subqueue is a distinct operational queue.
  • The method separates the ready queue into various separate queues is Multilevel Queue.
  • The processes are permanently assigned to subqueues, generally based on some property of the process such as memory size, priority or process type.
  • Each subqueue has its own scheduling algorithm. For example, interactive processes at the foreground may use round robin scheduling while batch jobs at the background may use the FCFS method.
  • In addition, there is a scheduling algorithm that works globally between the different subqueues. Usually this is a fixed priority preemptive scheduling. For example, the foreground queue may have absolute priority over the background queue.

Multi-level Queue Scheduling (MLQ)

Multi-level Feedback Queue Scheduling – CPU Scheduling

  • Multi-level feedback queue scheduling is an enhancement of multi level queue scheduling. In this scheme, processes can move between the different queues.
  • The various processes separated in different queues on the basis of their CPU burst characteristics.
  • If a process consumes a lot of CPU time, placed into a lower priority queue. Thus I/0 bound and interactive processes placed in the higher priority queue and CPU bound processes are in lower priority queue.

Multi-level Feedback Queue Scheduling (MFQ) - CPU Scheduling

  • If a process waits too long in a lower priority queue. It is moved higher priority queue Such an aging prevents starvation.
  • The top priority queue has given smallest CPU time quantum.
  • If the quantum expires before the process voluntarily relinquishes the CPU, the process placed at the back of the next lower queue.
  • In many multi-level feedback schemes, the quantum given to the process an it moves to each lower level queue becomes larger.

Difference between Multilevel Queues (MLQ) and Multilevel Feedback Queues (MFQ)

Comparison between Multilevel Queues (MLQ) and Multilevel Feedback Queues (MFQ)

Multilevel Queues (MLQ) Multilevel Feedback Queues (MFQ)
It multilevel queues, algorithm required to schedule process is less complex and inflexible. The algorithm required to schedule processes in multilevel feedback queues is more complex and flexible.
In multi level queues the various processes cannot move between different subsequent. In multilevel feedback queues the processes in different sub-queues can move between different queues.
The various processes assigned to different sub-queues on the basis of number of factors such as memory size, priority or process types. The various processes separated in different queues on the basis of their CPU burst characteristics.
It offers the advantage of low scheduling overhead as processes do not change their queues. Moving processes around the queues produces more CPU overhead.
  In such queues, same processes may starve for CPU if some higher priority queues are never becoming empty.  There is no problem of starvation as the process that waits too long in lower priority queue may be moved to at higher priority queue.

Leave a Reply

Your email address will not be published. Required fields are marked *