如何找到最短的作业优先调度算法的平均等待时间?该算法是非抢占式的。
进程-到达时间-爆发时间
P1 ----------------- 0.0 ------------- 8 -------
P2 ----------------- 0.4 ------------- 4 -------
P3 ----------------- 1.0 ------------- 1 -------
思考过程
在0时,P1进入队列并进入CPU。
在0.4时,P2进入队列,但是由于这是非抢占式的,因此P1仍会执行。
在1.0,P3进入队列,但是P1仍然执行
在8.0,P1完成并离开CPU。 P3现在进入CPU,因为它的突发时间更短。
在9.0,P3完成并离开CPU。 P2进入CPU。
在13.0,P2完成并离开CPU。
因此要计算等待时间,就是将过程开始执行的时间减去到达时间。所以平均等待时间应该是...
(0 +(8-1)+(9-0.4)= 15.6 / 3 = 5.2
但是,根据我的教授,这是不正确的。
我知道我可以问我的教授,我做了什么,但是他目前不在,我只是想问一下stackoverflow我在做什么错。
谢谢!