FCFS 1
FCFS 1
FCFS 1
In the first Gantt chart below, process P1 arrives first. The average
waiting time for the three processes is ( 0 + 24 + 27 ) / 3 = 17.0 ms.
In the second Gantt chart below, the same three processes have an
average wait time of ( 0 + 3 + 6 ) / 3 = 3.0 ms. The total run time for the
three bursts is the same, but in the second case two of the three finish
much quicker, and the other process is only delayed by a short amount.
FCFS can also block the system in a busy dynamic system in another
way, known as the convoy effect. When one CPU intensive process
blocks the CPU, a number of I/O intensive processes can get backed up
behind it, leaving the I/O devices idle. When the CPU hog finally
relinquishes the CPU, then the I/O processes pass through the CPU
quickly, leaving the CPU idle while everyone queues up for I/O, and
then the cycle repeats itself when the CPU intensive process gets back to
the ready queue.
It is FCFS concept, but the process which comes at the same time or the same ready queue
must be sorted in ascending order. The smallest burst time will be the first order while the
bigger will be the last one.
The idea behind the SJF algorithm is to pick the quickest fastest little job that
needs to be done, get it out of the way first, and then pick the next smallest fastest
job to do next.( Technically this algorithm picks a process based on the next
shortest CPU burst, not the overall process time. )
For example, the Gantt chart below is based upon the following CPU burst
times, ( and the assumption that all jobs arrive at the same time. )
The calculation in Round Robin is more difficult than the earlier calculations. In this
algorithm, it needs to split the best time into several subprocesses in a period.
Quantum Time is a time slicing technique to split burst time into several subprocesses.
Testing the same data with different quantum times is giving the different AWT.
When a process is given the CPU, a timer is set for whatever value has been set
for a time quantum.
o If the process finishes its burst before the time quantum timer
expires, then it is swapped out of the CPU just like the normal
FCFS algorithm.
o If the timer goes off first, then the process is swapped out of the
CPU and moved to the back end of the ready queue.
The ready queue is maintained as a circular queue, so when all processes have had
a turn, then the scheduler gives the first process another turn, and so on.
RR scheduling can give the effect of all processors sharing the CPU equally,
although the average wait time can be longer than with other scheduling
algorithms.
In general, turnaround time is minimized if most processes finish their next cpu
burst within one time quantum. For example, with three processes of 10 ms bursts
each, the average turnaround time for 1 ms quantum is 29, and for 10 ms quantum
it reduces to 20. However, if it is made too large, then RR just degenerates to
FCFS. A rule of thumb is that 80% of CPU bursts should be smaller than the time
quantum.