3 Types of Schedulers in OS:
An operating
system has many schedulers. There are three main scheduler viz. long term
scheduler, short term scheduler, and medium term scheduler.
1. Long Term Scheduler:
It is also termed as job
scheduler. Its function is to select the jobs from the pool of jobs (job
pool) and load these jobs into main memory (ready queue) of the computer.
The main objective of job scheduler is to provide balanced
mix of jobs consisting of IO bound and CPU bound processes. It also controls
the degree of multiprogramming. If degree of multiprogramming is stable, then
average rate of process creation must be equal to average departure rate of
processes leaving the system.
A ready queue is a
nothing but a queue. It is one type of data structure consisting of two ends. One
end is called as front and another
end is termed as rear. The jobs are
loaded into the ready queue through the front;
and these jobs are deleted through the rear.
A long term scheduler may be absent or minimal in some systems. It is absent in time sharing systems. When a process changes its state from new to ready, long term scheduler comes in play.
2. Short Term Scheduler:
It is also called as CPU scheduler. Function of the short
term scheduler is to select a job from the ready queue and gives the control of
the CPU to that process with the help of a Dispatcher.
The main objective is to increase system performance with respect to the chosen
set of criteria. The method of selecting a process from the ready queue depends
on the CPU scheduling algorithm. It executes most frequently and is faster
compared to long term scheduler.
Dispatcher:
A dispatcher is a module that connects the CPU to the process
selected by the short-term scheduler. The main functions of the dispatcher are:
·
switching
the CPU from one process to another process (context switch)
·
switching
to user mode
·
jumping
to the proper location in the user program and ready to start execution
The dispatcher should be fast because it is invoked during
each and every process switch. The time taken by dispatcher to stop one process
and start another running is known as dispatch
latency. The degree of multiprogramming depends greatly on the dispatch
latency. It is also sometimes called short term scheduler. If the dispatch
latency increases, then degree of multiprogramming decreases.
3. Medium Term Scheduler:
It is a part of swapping function. If a process requests an IO in the middle of the execution, then that process is removed from main memory and loaded into waiting queue. When the IO operation completes, then the job is moved from waiting queue to ready queue. These two operations are commonly termed as swapping and are performed by the medium term scheduler. It reduces the degree of multi programming.
No comments:
Post a Comment