面试题答案
一键面试先来先服务(FCFS)
- 优势:
- 实现简单:只需按照进程到达顺序进行调度,无需额外复杂的计算和排序。
- 公平性直观:对于所有进程一视同仁,先到的进程先执行,符合一般的公平观念。
- 局限:
- 不利于短作业:如果长作业先到达,短作业需要等待很长时间,导致短作业平均周转时间长。
- I/O 与 CPU 混合型作业调度不佳:可能使 I/O 设备长时间空闲,因为 CPU 型长作业可能长时间占用 CPU。
- 适用场景:
- 批处理系统中作业相对独立且无时间限制场景:如后台数据处理任务,对响应时间要求不高,此时 FCFS 可按提交顺序依次处理,实现简单且公平。例如银行夜间批量处理账目结算作业,按作业提交顺序处理即可。
最短作业优先(SJF)
- 优势:
- 平均周转时间短:优先调度预计执行时间最短的作业,能有效减少整体作业的等待时间,提高系统吞吐量。
- 局限:
- 难以准确预估作业执行时间:实际中作业执行时间往往难以精确预测,预估不准可能导致调度效果不佳。
- 可能导致长作业饥饿:若不断有短作业进入系统,长作业可能长时间得不到执行机会。
- 对 I/O 与 CPU 混合型作业考虑不足:仅以作业执行时间为标准,可能忽视 I/O 需求。
- 适用场景:
- 已知作业执行时间且作业可预估场景:如在一些科学计算集群中,对于特定类型的计算任务,经验或测试能较准确预估执行时间,采用 SJF 可提高集群整体效率。例如气象数据模拟计算任务,不同规模的数据模拟任务执行时间可预估,优先处理短时间任务可加快整体处理进度。