Download In computer science, a multilevel feedback queue is

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
A fresh loom for Multilevel feedback Queue scheduling Algorithm
Rakesh Kumar Yadav
IFTM University,INDIA
[email protected]
Anurag Upadhyay
IFTM University
[email protected]
ABSTRACT:
CPU scheduling is a vital phenomenon of operating system. At present, numerous CPU
scheduling algorithms are existing like FCFS(First come first serve), SJF (shortest job
first),SRTF( Shortest remaining time first) , Priority Scheduling,(RR)Round Robin scheduling ,
MLQ( multilevel queue). Efficiency and performance are not remaining satisfactory of these
algorithms. MLFQ( Multilevel feedback queue) be one of most potential strategies, for CPU
scheduling .It is further extension of multi-level queue scheduling algorithm while multilevel
queue scheduling is results of combination of basic scheduling algorithms such as FCFS and RR
scheduling algorithm. Therefore, research on these algorithms remains continuing till today. This
paper, suggested a novel approach which will improve the performance of MLFQ (CPU)
scheduling algorithm.
Keywords: CPU Scheduling, RR scheduling, Multi Level Feedback Queue Scheduling
1. Introduction: The performance and efficiency of multitasking operating systems primarily
depend on the used CPU scheduling algorithm, whether the CPU is one of the principal
computer resources. Frequently, multi-programmed computer has multiple processes
competing for the CPU at the same time [1]. When more than one process is in the ready
state, and only one CPU is available, the operating system must decide which process to run
first. The part of operating system that makes the choice of scheduling algorithm is called
short term scheduler or CPU scheduler. Currently, numerous CPU scheduling
algorithms[2][3][4[5][6][7][8][9]are existing like FCFS,SJF],SRTF, Priority Scheduling, RR
Round Robin Scheduling , MLQ and MLFQ. MLFQ may be one of most potential strategies,
for CPU scheduling .It is further extension of multi-level queue scheduling algorithm while
multilevel queue scheduling is results of combination of basic scheduling algorithms such as
FCFS and RR scheduling algorithm. Therefore, research on these algorithms remains
continuing till today.
1.1 Scheduling Algorithm Criteria.
Allocating CPU to a process requires careful attention to assure fairness and avoid process
starvation for CPU. Different CPU scheduling algorithm have different properties and may favor
one class of process over another many performance measures have been suggested for
comparing CPU scheduling algorithms. Performance measures are used include CUP utilization,
throughput, turnaround time, waiting time, response time, scheduler efficiency and context
switching [10].
A good scheduling algorithm is the one that is able to optimize the performance measures. The
optimization performance measures are; maximizing CPU Utilization, maximizing throughput,
minimizing turnaround time, minimizing waiting time, minimizing response time, maximizing
scheduler efficiency, minimizing the context switching
2. Existing MLFBQ Scheduling approach
(MLFQ) scheduler was first developed by Corbato et al. in 1962 in a system known as the
Compatible time-Sharing System (CTSS), and this work, along with later work on Multics, led
the ACM to award Corbato its highest honor, the Turing Award. It has subsequently been refined
throughout the years to the implementations you will encounter in modern systems. The
fundamental problem MLFQ tries to address is two-fold. First, it would like to optimize
turnaround time. Second, MLFQ would like to make a system feel responsive to interactive users,
and thus minimize response time. Unfortunately, algorithms like Round Robin reduce response
time but are terrible for turnaround time [11].
Silberchatz, Galvin and Gagne [2], algorithm partitions the ready queue into several separate
queues. The processes are assigned to one queue. Based on proper of the process, such as
memory size, process priority or process type. Each queue has its own scheduling algorithm. Like
foreground queue must be selected by RR scheduling algorithm by an FCFS Algorithm. These
algorithms provide a facility that process can change their foreground or background nature. That
means this algorithm allows a process to move between queues. If a process uses too much CPU
time it will be moved to a lower priority queue. This scheme leaves I/O bound and interactive
processes in the higher priority queues. Similarly processes that wait too long in a lower priority
queue may be moved to a higher priority queue. This form of aging prevents starvation.
Changing their foreground or background nature of set up has the advantage of low scheduling
overhead but the disadvantage of being inflexible.
Therefore, MLFQ is just like multilevel queue scheduling except allows a process to move
between queues.
3. Proposed Algorithm:
In proposed scheduling algorithm, have used together the working principle of MLFQ [2],
SJF[10] and improved round robin scheduling algorithm[9].
Step1. Divide memory into three multiple queue. Each queue has its own scheduling algorithm.
First two queues have RR scheduling algorithm and last queue has FCFS scheduling algorithm
Step2. Initially, wait until all the processes have been come into first queue.
Step3. After entering all process, sort all processes in according their burst time
Step4. After sorting, apply RR (round robin) scheduling algorithm with suitable time quantum.
Step5. As now, in MLFQ, processes are switched from one queue to another queue. It means
after completion of Step all process will switched from first queue into second queue. At the
second queue, repeat the steps 4
Step 6: After the completion of Step 4 and 5, all the process will enter into third queue where,
this queue has FCFS scheduling algorithm.
4. Experiment, Implementation and Analysis.
This section discusses only two experiments because results analysis assured that conclusions will
remain unchanged.
4.1 First Experiment:
Table [1] shows initial state of processes of MLFQ. Suppose, MLFQ is partitioned into three
queues. On the first two queues, RR scheduling algorithm is applying, which have time quantum
1 ms and 5 m respectively. On the third queue, FCFS scheduling algorithm is applying..
Process
A
B
C
D
E
F
Arrival Time
0.0
0.4
1.0
1.4
1.8
2.0
Burst Time (ms)
8
4
1
10
11
5
Table [1]
4.1.1 Evaluations:
According to existing concept, average waiting time, average turnaround time will be 16.4 ms
and 22.9 ms respectively.
According to novel approach, average waiting Time average turnaround time will be 15.6 ms and
22.067ms respectively.
4.2 Second Experiment:
Table [2] shows initial state of processes. Suppose, MLFQ is partitioned into three queues. On the
first two queues, RR scheduling algorithm is applying, which have time quantum 4 ms and 5 ms
respectively. On the third queue, FCFS scheduling algorithm is applying.
Process
A
B
C
D
E
F
Arrival Time
0.0
0.8
1.0
1.2
1.8
2.0
Burst Time (ms)
8
7
5
10
20
4
Table [2]
4.2.1 Evaluations:
According to existing concept, average waiting time, average turnaround time will be 25.2 ms
and 34.2 ms respectively.
According to novel approach, average waiting Time average turnaround time will be 22.2 ms and
31.2 ms respectively.
4.3 Comparison
Figure [1] and [2] are demonstrating turnaround time using novel approach. Frequently, the
turnaround times of processes are less or equal compare to existing approach. If at any situation,
the turnaround times of process are greater, then at point of last stage, it degrades very slightly. At
last, total outcomes of novel approach will be better compare than traditional approach. The same
results for waiting time are demonstrated by Figure [3] and [4].
Waiting Time
35
45
40
35
30
25
20
15
10
5
0
30
25
Existing
Proposed
Time
Time
Turm Around Time
20
Existing
15
Proposed
10
5
0
A
B
C
D
E
A
F
B
D
E
F
Process
Process
Figure [3]
Figure [1]
Turm Around Time
Waiting Time
60
35
50
30
40
25
Existing
30
Proposed
20
Time
Time
C
20
Existing
15
Proposed
10
10
5
0
0
A
B
C
D
Process
E
F
A
B
C
D
E
F
Process
Figure [4]
Figure [2]
It may be observed that average waiting time and average turnaround time both are minimizing
with novel approach. Since, minimization is not much more, but it may be much more by
increasing the number of process. The reduction of total waiting time and turnaround time shows
maximum CPU utilization and response time. Therefore, novel approaches much more efficient
compare than exiting approach.
5. Conclusion:
Paper proposed a novel approach for MLFQ CPU scheduling algorithm. Experiments illustrate
that proposed novel approach provides much better results compare than traditional approaches.
The proposed algorithm is applicable, where partitioned memory into three multiple queue. This
algorithm may be enhanced for many partitioned in future. In future, soft computing techniques
may also be apply and may find much better results
References:
[1] Bashir Alam, 1M.N. Doja, R. Biswas ,“Finding Time Quantum of Round Robin CPU Scheduling Algorithm Using
Fuzzy Logic “International Conference on Computer and Electrical Engineering, 2008, IEEE
[2]Silberchatz, Galvin and Gagne ,2003, operating systems concepts,(6th edn, John Wiley and Sons)
[3] D. M. Dhamdhere Operating Systems A concept Based Approach, Second edition, Tata McGraw-Hill, 2006
[4] Operating Systems Sibsankar Haldar , Pearson Education, 2009
[5]Andrew S. Tanenbaum , and Albert S. Woodfhull , Operating Systems Design and Implementation, Second
dition,2005
[6]William Stallings, Operating Systems Internal and Design Principles, 5th Edition ,2006
[7] Milenkovic, M., Operating System Concepts and Design, McGraw Hill, International Edition, 1992,
[8] Mr. Umar Saleem and Dr. Muhammad Younus Javed “ Sim,ulation of CPU Sheduling Algorithms” , 2000, IEEE,
Volume 2,Pp:562-567
[9] Rakesh Kumar Yadav, Abhishek K Mishra,Naveen Prakash, Himanshu Sharma,”An Improved Round Robim
Sheduling Algorithm”, Internatinal Journal on Computer Science andEengineering , 2010,Volume 2, Number 04 ,
pp:1064-1066
[10]Al-Husainy, M.A.F.,”Best-job-first CPU scheduling algorithm” Inform. Technol. J., 2007, Volume 6: Number
2,Pp: 288-293.
[11] F. J. Corbato, M. M. Daggett, R. C. Daley ,“An Experimental Time-Sharing System”, IFIPS, 1962