1. FCFS、SJF/SRTF、时间片轮转(RR)、优先级调度、多级反馈队列五类调度算法的原理与优缺点对比?
FCFS、SJF/SRTF、时间片轮转(RR)、优先级调度、多级反馈队列五类调度算法的原理与优缺点是什么?
- FCFS:按到达顺序,简单但平均等待时间大,有护航效应。
- SJF/SRTF:选最短作业/剩余时间最短,最优平均周转但需预知运行时间,SJF 非抢占可能饥饿。
- RR:时间片轮转,公平响应,但时间片影响吞吐。
FCFS(先来先服务)按到达顺序调度,实现简单、无饥饿,但短作业被长作业阻塞(护航效应),平均等待时间可能很大。SJF(短作业优先)选择运行时间最短的进程,能最小化平均周转时间,但需预知运行时间,且非抢占 SJF 可能让长作业饥饿;SRTF(最短剩余时间优先)是 SJF 的抢占版本,动态选择剩余时间最短者,平均周转最优但切换频繁。时间片轮转(RR)按到达顺序排队,每进程运行一个时间片后轮转,响应时间好、公平,但时间片过小切换开销大、过大退化为 FCFS。优先级调度按优先级选择,高优先级任务响应快,适合实时场景,但低优先级可能饥饿(需老化)。多级反馈队列(MLFQ)设置多个不同优先级的队列,新进程进入最高优先级,时间片用完降级,交互/短任务可在高队列快速完成,长任务不断降级,兼顾响应时间与吞吐,且通过老化防饥饿,是现代操作系统(如 Linux CFS 之前)广泛采用的调度思想。
五类算法在"响应时间、周转时间、公平性、实现复杂度"上各有取舍。SJF/SRTF 是最优平均周转但理想化;RR 保证响应但牺牲吞吐;MLFQ 是综合折中。掌握"目标优化指标"与"算法代价"的对应关系是解答对比题的关键。