scheduling algorithm. Priority scheduling can be
either pre-emptive or non pre-emptive. Round
robin scheduling is a pre-emptive version of firstcome,
first-served scheduling. Each process gets a
small unit of CPU time usually 10-100
milliseconds. After this time has elapsed, the
process is pre-empted and added to the end of the
ready queue. This time interval is known as a timeslice
or quantum. If a process does not complete or
get blocked because of an I/O operation within the
time slice, the time slice expires and the process is
pre-empted. This pre-empted process is placed at
the back of the run queue where it must wait for all
the processes that were already in the queue to
cycle through the CPU. if a process gets blocked
due to an I/O operation before its time slice
expires, it is, of course, enters a blocked because of
that I/O operation. Once that operation completes,
it is placed on the end of the run queue and waits
its turn. A big advantage of round robin scheduling
over non-pre-emptive schedulers is that it
dramatically improves average response times and
starvation free. By limiting each task to a certain
amount of time, the operating system can ensure
that it can cycle through all ready tasks, giving
each one a chance to run. With round robin
scheduling, interactive performance depends on the
length of the quantum and the number of processes
in the run queue. Round robin techniques is one of
the most popular scheduling algorithms but the
problem with that is more context switches, more
waiting time. Round Robin scheduling is an older
method of CPU time sharing, proposed ADDR
algorithm meet better scheduling criterion than the
basic round robin scheduling algorithm.