如何计算处理时间?

时间:2011-02-22 13:24:59

标签: time processor

给出了5个过程的处理时间。如果给出两个处理器,我将如何找出进程必须等待的最小平均等待时间。

2 个答案:

答案 0 :(得分:2)

在任何给定的处理器上,一个有序的一组进程的总等待时间需要花费时间P 1 ... P N 才能完成单个经过时间的总和按剩余的等待进程数量:

(N - 1)P 1 +(N - 2)P 2 + ... + P N-1 。< / p>

这表明等待时间受到早期流程成本的倍数的影响,结果是我们需要尽早使用较短时间运行的作业并最小化队列长度。假设我们对进程持续时间进行排序,并将它们称为A,B,C,D和E(运行时间最长的作业)。如果我们对比以下优先级:

Processor 1: A, B, C, D
Processor 2: E
Total waiting time: 3A + 2B + C

...与...

Processor 1: A, B, D
Processor 2: C, E
Total waiting time: 2A + B + C

我们可以清楚地看到第二个配置保存(A + B)总等待时间,以及以3:2分割分配作业的好处。同样地,如果我们将D或E换成A,B或C中的任何一个,则2A + B + C公式只会更差,因为我们知道A <= B <= C <= D <= E. / p>

只有两种替代3:2排列,给定D和E不参与等待时间计算(以下将用X表示)。

Processor 1: A, C, X
Processor 2: B, X
Total waiting time: 2A + C + B  [no change]

Processor 1: A, X
Processor 2: B, C, X
Total waiting time: A + 2B + C  [maybe worse as B>=A]

因此,最佳和同样令人满意的排序是:ABX / CX和ACX / BX。

答案 1 :(得分:0)

执行最短作业优先安排  然后找出平均等待时间。