📜  门| GATE-CS-2014-(Set-3)|第65章

📅  最后修改于: 2021-06-29 11:02:19             🧑  作者: Mango

操作系统使用最短剩余时间优先调度算法来抢先调度进程。考虑以下一组进程及其到达时间和CPU突发时间(以毫秒为单位):

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

进程的平均等待时间(毫秒)为_________。
(A) 4.5
(B) 5.0
(C) 5.5
(D) 6.5答案: (C)
解释:

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

突发时间–进程从CPU完整执行所需的总时间。

等待时间–进程在就绪队列中等待等待轮到CPU的时间为多少?

现在,上述过程的甘特图为:

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 

进程p1在时间0到达,因此cpu开始执行它。

在2个单位时间P2到达并且P2的突发时间为4个单位之后,进程p1的剩余时间为10个单位,因此cpu开始执行P2,将P1置于等待状态(抢先和最短剩余时间优先调度) 。

由于P1的剩余时间最长,因此最终由CPU执行。

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. 

这个问题的测验