现有3个同时到达的作业J1、J2和J3,它们的执行时间分别为t1、t2和t3,且t1
时间: 2024-03-30 19:33:50 浏览: 290
Java定时执行任务的三种方法
5星 · 资源好评率100%
我理解你的问题是有三个同时到达的作业 J1、J2 和 J3,它们的执行时间分别为 t1、t2 和 t3,且 t1 < t2 < t3。此时如何安排它们的执行顺序可以最小化它们的平均等待时间?
如果采用先来先服务(FCFS)调度算法,即按照作业到达的先后顺序依次执行,它们的平均等待时间为:
(AWT) = ((0 + t1) + (t1 + t2) + (t1 + t2 + t3)) / 3 = (2t1 + 2t2 + t3) / 3
而如果采用最短作业优先(SJF)调度算法,即按照作业执行时间从短到长排序依次执行,它们的平均等待时间为:
(AWT) = ((0 + t1) + (t1 + t2) + (t2 + t1 + t3)) / 3 = (2t1 + 2t2 + t3) / 3
可以发现,无论采用哪种调度算法,它们的平均等待时间都是一样的,即 (2t1 + 2t2 + t3) / 3。因此,这三个作业的执行顺序并不会影响它们的平均等待时间。
阅读全文