什么时候我们更喜欢循环而不是FCFS,反之亦然?

时间:2009-09-24 15:23:44

标签: operating-system scheduling

我知道这取决于设计,但我被问到这个问题并没有采取任何假设.. 我应该回答什么,

2 个答案:

答案 0 :(得分:4)

首先,这听起来像是一个家庭作业问题。如果是这种情况,我建议您自己进行研究。

通过FCFS我假设你的意思是“先到先服务”,如果我记得这是一个系统,按照提供给调度程序的顺序执行进程完成,是吗?

如果是这样,基本准则是:如果希望允许长时间运行的进程执行而不干扰较短的进程,则使用循环法,但副作用是无法保证完成顺序。如果系统中有许多进程,循环可能会受到影响,因为由于往返时间较长,每个进程需要更长的时间才能完成。

如果确实需要有保证的完成顺序,FCFS是更好的选择,但长时间运行的进程可能会使系统停滞。但是,每个过程都得到系统的充分关注,并且可以在最快的时间内完成,这样可以带来好处。

最后它确实归结为不一定是设计而是需要:我是否需要半同步执行或者我是否需要按顺序执行?流程需要更长时间但同步计算是否对我有利,或者如果一切尽可能快地执行,我会更好吗?系统的需求决定了要使用的模型。

编辑:Wikipedia对这些和其他简单的调度方法有很好的细分here

答案 1 :(得分:1)

循环法(RR)是过程和网络调度程序在计算中使用的算法之一。当通常使用该术语时,时间片以相等的部分和循环次序分配给每个过程,处理没有优先级的所有过程(也称为循环执行)。循环调度简单,易于实现,无需饥饿。循环调度也可以应用于其他调度问题,例如计算机网络中的数据分组调度。这是一个操作系统概念。