我正在重新访问操作系统 CPU 作业调度,突然想到一个问题,操作系统如何在执行之前知道进程的执行时间,我的意思是在 SJF(最短作业优先)等调度算法中,执行时间如何过程是先验计算的?
问问题
1391 次
2 回答
2
来自维基百科:
Another disadvantage of using shortest job next is that the total execution time of a job must be known before execution. While it is not possible to perfectly predict execution time, several methods can be used to estimate the execution time for a job, such as a weighted average of previous execution times.[1]
于 2012-10-13T10:51:24.640 回答
1
此外,操作系统可以通过首先计算其 CPI 来计算每个任务所需的总时间。
(CPI:每条指令的周期数)
每项工作都有一个加权平均 CPI。例如,浮点指令比定点指令重得多,这意味着它们需要更多的时间来执行。因此,处理定点操作的工作:如添加或增量被认为更短。因此,在最短的作业中,它应在上述作业之前执行。
于 2014-02-03T11:18:27.997 回答