Skip to main content

Multilevel Feedback queue scheduling (MFQ)

 

Multilevel Feedback queue scheduling (MFQ)

·         Multilevel feedback queue scheduling is an enhancement of multi-levelqueue scheduling. In this scheme, processes can move between the different queue

·         The various processes are separates in different queue on the basis of their CPU Burst Char characteristics

·         If a process consumes a lot of CPU time , it is placed into a lower priority queue. Thus I/O bound and interactive process are placed in the higher priority queue and CPU bound pricesses are in lower priority

·         If a processes waits too long in a lower priority queue it is moved higher priority queue. Such an aging prevents starvation.

·         The top priority queue is given smallest CPU time Quantum

·         If the quantum expires before the process voluntarily relinquishes the CPU, the process is placed at the back of the next lower queue.

·         In many multi-level feedback schemes, the quantum gives too the process as it moves to each lower level queue become larger

·         Whenever any new process arrives un the top queue, the running process in FCFS queue is preempted as it has lower priority.

·         Any process that spends an amount of elpsed time exceeding the aging interval will be promoted to the next higher priority queue.

·         These parameters makes system both flexible and complex. These parameters are:

1.       The number of queues.

2.       The scheduling algorithm for each queue

3.       The time slice associated with each queue

4.       The condition that will couse a process to move downward into a lower priority queue

5.       The condition that will couse and process to move upward into the hiher priority queue.

6.       The mechanism for detremaining which queue a new process should enter into

7.       Whether arrival of a process into high level queurrrrre will preempt a process from a lower level queue

 Example – 

Consider a system which has a CPU bound process, which requires the burst time of 40 seconds.The multilevel Feed Back Queue scheduling algorithm is used and the queue time quantum ‘2’ seconds and in each level it is incremented by ‘5’ seconds.Then how many times the process will be interrupted and on which queue the process will terminate the execution? 

Solution – 
Process P needs 40 Seconds for total execution. 
At Queue 1 it is executed for 2 seconds and then interrupted and shifted to queue 2. 
At Queue 2 it is executed for 7 seconds and then interrupted and shifted to queue 3. 
At Queue 3 it is executed for 12 seconds and then interrupted and shifted to queue 4. 
At Queue 4 it is executed for 17 seconds and then interrupted and shifted to queue 5. 
At Queue 5 it executes for 2 seconds and then it completes. 
Hence the process is interrupted 4 times and completes on queue 5. 

Advantages:

  1. It is more flexible.
  2. It allows different processes to move between different queues.
  3. It prevents starvation by moving a process that waits too long for lower priority queue to the higher priority queue.

Disadvantages:

  1. For the selection of the best scheduler, it require some other means to select the values.
  2. It produces more CPU overheads.
  3. It is most complex algorithm.

Comments

Popular posts from this blog

Shortest Job First Scheduling (SJF)

  Shortest Job First Scheduling (SJF) ·          SJF ia also known as shortest-job-next(SJN) algorithm and is faster than FCFS. ·          In SJF, the process with the least estimated execution time is selected from the ready queue for   execution. ·          For this, SJF algorithm associates with each process, the length of its next CPU burst. When the CPU is available, it is assigned to the process that has the smallest next CPU burst. ·          If tow processes have the same length of next CPU burst ,FCFS scheduling algorithm is used to break the tie. ·          SJF algorithm can be preemptive or non-preemptive.     Non-preeptive SJF ·          In non-preemptive SJF, scheduling, CPU is always assigned to the ...

Scheduling Algorithms

     Scheduling Algorithms CPU scheduling algorithm deal with the problem of deciding which of the processes in the ready queue is to be allocated the CPU . six commonly used scheduling algorithms are: 1. first-come First-served(FCFS) 2. Shortest job First(SJF) 3. Priority scheduling 4. Round-Robin Scheduling(RR) 5. Multi-Level Queue Scheduling(MLQ) 6. Multi-Level Feedback Queue Scheduling (MFQ)       First-Come First-Served Scheduling (FCFS) ·       It is simplest and the most straight forward of all scheduling algorithms. ·       In this scheduling, the process that request the CPU first is allocated CPU first. Thus   the name first come first served. ·       We can say that in FCFS scheduling, a process is allocated CPU time according to the arrival time of a process. ·       The implementation of FCFS policy is easily manged with a FIFO queue...

Priority scheduling

Priority scheduling           In priority scheduling , a priority is associated with all processes.            Process are executed in sequence according to their priority.           The CPU time is allocated to the process with highest priority.           If the priority of two or more processes are equal than the process that has been inserted first   into   the ready queue is selected for execution. In other words, FCFS scheduling is performed when wo or more processes have same priority.           The priorities are implemented as affixed range of numbers such as 0to 7 or 0 to 4,095.           In other system, a low number indicates a high priority . in that case,a process with priority 0 is executed first.           Priorities can be defined in two ways : internal or externall.     ...

Multi Level Queue Scheduling (MLQ)

  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. ·          In this scheduling ready queue is divided into various queue that are called sub queues. A subqueue is a distinct operational queue ·          The process 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 process sucheduling algorithm. For example interactive process at the foreground may use round robin scheduling while batch jobs at the background may use the FCFS method ·          For example, consider a system with four different queues 1.   ...

Multi user Operating System

  Multi user operating system ·           In a multi-user operating system, multiple number of user can access different resources of a computer at a same time. ·           The access is provided using a network that consists of various personal computer attached to a mainframe computer system.                                                              diagram of multi -user operating system       ·           The various personal computer can send and receive information to mainframe computer system. ·           The example    of multi-user OS are UNIX, windows 2000,novell netware.            sing...