Unix 5
Unix 5
This strategy can be implemented by using sorted FIFO queue. All processes in a
queue are sorted based on their priority with highest priority process at front
end. When CPU becomes free, a process from the first position in a queue is
selected to run.
• Example :
Consider the following set of four processes. Their arrival time, total time
required completing the execution and priorities are given in following table.
Consider all time values in millisecond and small values for priority means higher
priority of a process.
Process Arrival Time (T0) Time required for completion ( ∆T) Priority
P0 0 10 5
P1 1 6 4
P2 3 2 2
P3 5 4 0
Here, process priorities are in this order: P3 > P2 > P1 > P0.
• Gantt Chart :
0 10 14 16 22
• Initially only process P0 is present and it is allowed to run. But, when P0
completes, all other processes are present. So, process with highest priority P3 is
selected and allowed to run till
it completes. This procedure is repeated till all processes complete their
execution.
• Statistics :
Process Arrival time (T0) Completion Time (∆T) Finish Time (T1)
Turnaround Time (TAT=T1-T0) Waiting Time (TAT-∆T)
P0 0 10 10 10 0
P1 1 6 22 21 15
P2 3 2 16 13 11
P3 5 4 14 9 5
• Gantt chart:
0 1 3 5 9 13 22
• Initially only process P0 is present and it is allowed to run. But when P1
comes, it has higher
priority. So, P0 is preempted and P1 is allowed to run. This process is repeated
till all processes complete their execution.
• Statistics:
Process Arrival time (T0) Completion Time (∆T) Finish Time (T1)
Turnaround Time (TAT=T1-T0) Waiting Time (TAT-∆T)
P0 0 10 22 22 12
P1 1 6 13 12 6
P2 3 2 5 2 0
P3 5 4 9 4 0
• Advantages:
Priority is considered. Critical processes can get even better response time.
• Disadvantages:
Starvation is possible for low priority processes. It can be overcome by
using technique called ‘Aging’.
Aging: gradually increases the priority of processes that wait in the system
for a long time.
Context switch overhead is there.