Skip to main navigation Skip to search Skip to main content

New Design and Implementation of MLFQ Scheduling Algorithm for Operating Systems Using Dynamic Quantum

  • American University of the Middle East

Research output: Contribution to journalArticlepeer-review

Abstract

The new design of multilevel feedback queue (MLFQ) will depend on the usage of a new technique in computing the quantum in order to produce Auto Detect Quantum (ADQ) which is relied on the burst of each process that has been enrolled to the system. By summating the burst time of each process that has arrived and dividing it by the number of available processes, we can obtain the dynamic quantum in each level of scheduling. The processes are scheduled and shifted down from queue to other one according to their remaining bursts time that should be updated periodically. Every queue has a unique auto detected quantum which is gradually increased or decreased from top level to bottom level queues according to the case of arriving processes. Depending on the results of graphical simulating algorithm on case studies, we can discover that a dynamic quantum is very suitable to accommodate low priority processes that still for a long duration to complete their requests, i.e. avoid the starvation of CPU bounded processes. Although, it is still compatible with high priority processes (I/O-Bounded) to provide a fair interactivity with them. In comparison to traditional MLFQ, the performance of the new scheduling technique is better and practical according to the applied results. Additionally, we developed suitable software to simulate the new design and test it on different cases to verify and validate it.

Original languageEnglish
Pages (from-to)189-196
Number of pages8
JournalStatistics, Optimization and Information Computing
Volume3
Issue number2
DOIs
StatePublished - 2015
Externally publishedYes

Keywords

  • Auto detect quantum
  • Cpu processes
  • Dynamic quantum
  • Multilevel feedback queue
  • Operating systems
  • Scheduling algorithm

Cite this