The Gateway to Computer Science Excellence
First time here? Checkout the FAQ!
x
+10 votes
1.3k views

An operating system uses shortest remaining time first scheduling algorithm for pre-emptive scheduling of processes. Consider the following set of processes with their arrival times and CPU burst times (in milliseconds):
 

Process Arrival Time Burst Time
$P1$ $0$ $12$
$P2$ $2$ $4$
$P3$ $3$ $6$
$P4$ $8$ $5$

The average waiting time (in milliseconds) of the processes is ______.

asked in Operating System by Veteran (101k points)
edited by | 1.3k views

3 Answers

+15 votes
Best answer
  Arrival Time Burst Time Completion Time Turn Around Time Waiting Time $= CT - BT - AT$
$p1$ $0$ $12$ $27$ $27$ $15$
$p2$ $2$ $4$ $6$ $4$ $0$
$p3$ $3$ $6$ $12$ $9$ $3$
$p4$ $8$ $5$ $17$ $9$ $4$

$(15 + 0 + 3 + 4)/4 = 5.5$ msecs

$p1 \ p2 \ p2 \ p3 \ p3 \ p4 \ p1$

$0 \ 2 \  3 \   6  \  8  \  12 \ 17 \ 27$

answered by Active (3.5k points)
edited by
0
Why P3 not got preempted at 8ms?

P4 with lower Burst time arrived when P3 was executing so why P3 didn't got preempted?

According to me: P1,P2,P3,P4,P3,P1 should be the schedule.

and Avg. Waiting time is coming as 5.75ms.

Please correct me if I am wrong...
+1

hsd31196 

When P4 arrived, remaining burst time of P3 was 4 while burst time of P4 was 5. So P3 continued to execute

+2 votes

Average Waiting Time= [(17-2)+(2-2)+(6-3)+(12-8)] /4 =5.5
Ans is 5.5

answered by Loyal (6.1k points)
0 votes
Process   Arrival Time   Burst Time
  P1           0           12
  P2           2           4
  P3           3           6
  P4           8           5 

Burst Time - The total time needed by a process from the CPU for its complete execution. Waiting Time - How much time processes spend in the ready queue waiting their turn to get on the CPU Now, The Gantt chart for the above processes is :

P1 - 0 to 2 milliseconds

P2 - 2 to 6 milliseconds

P3 - 6 to 12 milliseconds

P4 - 12 to 17 milliseconds

P1 - 17 to 27 milliseconds 

Process p1 arrived at time 0, hence cpu started executing it. After 2 units of time P2 arrives and burst time of P2 was 4 units, and the remaining time of the process p1 was 10 units,hence cpu started executing P2, putting P1 in waiting state(Pre-emptive and Shortest remaining time first scheduling). Due to P1's highest remaining time it was executed by the cpu in the end.

Now calculating the waiting time of each process:
P1 -> 17 -2 = 15
P2 -> 0
P3 -> 6 - 3 = 3
P4 -> 12 - 8 = 4 

Hence total waiting time of all the processes is 
                                     = 15+0+3+4=22
Total no of processes = 4
Average waiting time = 22 / 4 = 5.5
Hence C is the answer.
answered by Loyal (8.4k points)
Answer:

Related questions



Quick search syntax
tags tag:apple
author user:martin
title title:apple
content content:apple
exclude -tag:apple
force match +apple
views views:100
score score:10
answers answers:2
is accepted isaccepted:true
is closed isclosed:true

39,440 questions
46,623 answers
139,377 comments
57,026 users