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

Classification of Operating System

  Classification of operating systems The operating systems may be classified into different types depending upon the nature of interaction between the user and his/her program. The various types of operating system are : 1.       single user operating system    2.        Multi user operating system   3.         Batch processing operating system 4.        Multi programming operating system   5.       Multi tasking operating system   6.         Multiprocessing operating system 7.         Time sharing operating system 8.       Real time system      Distributed system Multi threading operating system       Single user operating system ·          ...

Micro kernel architecture

  Micro kernel  architecture What is Kernel? A kernel is an important part of an OS that manages system resources. It also acts as a bridge between the software and hardware of the computer. It is one of the first program which is loaded on start-up after the bootloader. The Kernel is also responsible for offering secure access to the machine's hardware for various programs. It also decides when and how long a certain application uses specific hardware. What is Microkernel? Microkernel  is a software or code which contains the required minimum amount of functions, data, and features to implement an operating system. It provides a minimal number of mechanisms, which is good enough to run the most basic functions of an operating system. It allows other parts of the operating system to be implemented as it does not impose a lot of policies. Microkernels and their user environments are usually implemented in the C++ or C programming languages with a little bit of assembly. Ho...

Multi Programming Operating System

  Multi programming  system ·           Multi programming operating system allows multiple users to execute multiple programs using a single CPU concurrently i.e. at the same time. ·           In multiprogramming several process are kept in the main memory and CPU execute all these processes concurrently. It means, the CPU immediately switches from one process to next that are ready to get executed ·           In such an operating system when one process start process start performing the instructions from several programs at the same time. ·           Rather, it means that there are number program available to CPU and that portion of one is executed, then segment of another and so on                                 ...

Easytolearn E-book 2

                                                                                                                                                                          Description:here we give you pdf. about classification of operating system in which  we provide all information of classification in detail.  

ENTERPROCESS COMMUNICATION AND SYNCHRONIZATION

      ENTERPROCESS COMMUNICATION AND SYNCHRONIZATION ·          In multi programming environment multiple process co-exit . a single   program may be broken into number of processes. ·          The process are classified into two categories : independent processes and cooperating processes. ·          An independent process is a standalone process that does not share any data with any other process. It cannot affect or be affected by the other processes executing   in the system. In other words, the modification made to an independent process does not affect the functioning of other process. ·          A cooperating processes is a process that shares data with other processes in a system it can affect or be affectedly the other processes executing in the system ·      ...