MST

星途 面试题库

面试题:进程管理之中等难度:常见进程调度算法如何平衡公平性与效率

请列举两种常见的进程调度算法,并阐述它们是怎样在公平性与效率这两个目标之间进行平衡的。
16.6万 热度难度
操作系统进程管理

知识考点

AI 面试

面试题答案

一键面试

先来先服务(FCFS)调度算法

  • 公平性:按照进程到达的先后顺序进行调度,先到达的进程先执行,从到达顺序角度看相对公平,每个进程都需按顺序等待处理,不存在进程插队情况。
  • 效率:如果短进程在长进程之后到达,短进程需等待长进程执行完毕,这会导致系统整体效率不高,尤其在长进程持续占用CPU时,其他进程响应时间较长。但对于I/O 密集型进程,由于其I/O操作时间长,在等待I/O时CPU可让给其他进程,在一定程度上提高了效率。

时间片轮转调度算法

  • 公平性:每个进程被分配相同的时间片,轮流使用CPU,无论进程长短、优先级高低,都有机会在每个时间片内执行,保证了公平性,避免了长进程一直占用CPU导致短进程无法执行的情况。
  • 效率:时间片大小是影响效率的关键因素。如果时间片设置过大,算法接近FCFS,长进程执行时短进程等待时间长,效率低;如果时间片设置过小,进程切换频繁,会增加系统开销,降低CPU有效利用率。合理设置时间片可在保证公平性基础上,尽量提高系统效率,例如根据进程数量、CPU性能等因素动态调整时间片大小。