0% found this document useful (0 votes)
7 views12 pages

OS_ch6 (1)

The document discusses various process scheduling algorithms, focusing on metrics such as CPU utilization, throughput, turnaround time, waiting time, and response time. It explains different scheduling techniques including Shortest Job First (SJF), preemptive and non-preemptive scheduling, and priority scheduling, highlighting their advantages and disadvantages. Additionally, it covers round-robin scheduling and its performance implications based on time quantum size.

Uploaded by

grsh779
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views12 pages

OS_ch6 (1)

The document discusses various process scheduling algorithms, focusing on metrics such as CPU utilization, throughput, turnaround time, waiting time, and response time. It explains different scheduling techniques including Shortest Job First (SJF), preemptive and non-preemptive scheduling, and priority scheduling, highlighting their advantages and disadvantages. Additionally, it covers round-robin scheduling and its performance implications based on time quantum size.

Uploaded by

grsh779
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 12

 PROCESS SCHEDULING ALGORITHMS

Name : Vaibhav Yashwant Abhang


Dept : CSE – B(105)
2nd Year
 CPU utilization – keep the CPU as busy as
possible
 Throughput – # of processes that complete
their execution per time unit
 Turnaround time – amount of time to execute
a particular process
 Waiting time – amount of time a process has
been waiting in the ready queue
 Response time – amount of time it takes from
when a request was submitted until the first
response is produced. (a process can produce
some output fairly early, and can continue
computing new results while previous results
are being output to the user.)
 Max CPU utilization
 Max throughput
 Min turnaround time
 Min waiting time
 Min response time
Process Burst Time
P1 24
P2 3
P3 3
 Suppose that the processes arrive in the order: P1 , P2
, P3
The Gantt Chart
P1 for the scheduleP2 is: P3

0 24 27 30

 Waiting time for P1 = 0; P2 = 24; P3 = 27


 Average waiting time: (0 + 24 + 27)/3 = 17
Suppose that the processes arrive in the order
P2 , P3 , P1 .
 The Gantt chart for the schedule is:
P2 P3 P1

0 3 6 30

 Waiting time for P1 = 6; P2 = 0; P3 = 3


 Average waiting time: (6 + 0 + 3)/3 = 3
 Much better than previous case.
 The effect short process behind long process
 Associate with each process the length of its next CPU
burst. Use these lengths to schedule the process with
the shortest time.
 Two schemes:
 nonpreemptive – once CPU given to the process it cannot
be preempted until completes its CPU burst.
 preemptive – if a new process arrives with CPU burst
length less than remaining time of current executing
process, preempt. This scheme is know as the
Shortest-Remaining-Time-First (SRTF).
 SJF is optimal – gives minimum average waiting time
for a given set of processes.
Process Burst Time
P1 7
P2 4
P3 1
P4 4
 SJF (non-preemptive)
P1 P3 P2 P4

0 7 8 12 16

 Average waiting time = (0 + 8 + 7 + 12)/4


=6.75
Process Arrival TimeBurst Time
P1 0.0 7
P2 2.0 4
P3 4.0 1
P4 5.0 4
 SJF (preemptive)
P1 P2 P3 P2 P4 P1

0 2 4 5 7 11 16

 Average waiting time = (9 + 1 + 0 +2)/4 = 3


 A priority number (integer) is associated with each
process
 The CPU is allocated to the process with the highest
priority (smallest integer  highest priority). Equal-
priority processes are scheduled in FCFS order.
 Preemptive
 nonpreemptive
 SJF is a priority scheduling where priority is the
predicted next CPU burst time. (The larger the CPU
burst, the lower
 the priority, and vice versa.)
 Problem  Starvation – low priority processes may
never execute.
 Solution  Aging – as time progresses increase the
The Average Waiting Time is 8.2 Milliseconds
 Each process gets a small unit of CPU time (time
quantum), usually 10-100 milliseconds. After this time
has elapsed, the process is preempted and added to
the end of the ready queue.
 If there are n processes in the ready queue and the
time quantum is q, then each process gets 1/n of the
CPU time in chunks of at most q time units at once.
No process waits more than (n-1)q time units.
 Performance
 q large  FIFO
 q small  q must be large with respect to context switch,
otherwise overhead is too high.
Process Burst Time
P1 53
P2 17
P3 68
P4 24
 The Gantt chart is:

P1 P2 P3 P4 P1 P3 P4 P1 P3 P3

0 20 37 57 77 97 117 121 134 154 162

 Typically, higher average turnaround than SJF,


but better response.

You might also like