Skip to content

2010年 408 操作系统 第 26 题

操作系统2010年选择题2分

题目

下列选项中,降低进程优先级的合理时机是( )。

错因

B

正好相反——刚完成 I/O 的进程是 I/O 密集型行为的体现,它跑一会就进 I/O 阻塞、不会霸占 CPU;这种进程优先级应该提高才对(让它的"快进快出"特性发挥作用,提升系统利用率)。降它优先级反而加剧 CPU 利用率低下。

C

长期在就绪队列等待的进程已经"等够久了"——按"避免饥饿"原则,应该提高它的优先级让它早点跑(HRRN、老化机制都是这个思路)。降它优先级等于让它继续等下去,加剧饥饿。

D

从就绪转运行只是开始用 CPU,还没占多久——这时降优先级没意义。优先级调整通常基于"行为反馈"(用了多久 CPU、做了什么),刚获得 CPU 还没积累任何信息,不该立刻调整。

总解析

动态优先级的核心思想:根据进程行为反馈调整优先级,惩罚 CPU 密集型 + 奖励 I/O 密集型,提升系统资源利用率。

降低优先级的合理时机:进程表现出"霸占 CPU"的行为,需要被压制。

选项时机该如何调?原因
A时间片用完降优先级把整个时间片用完没结束 = CPU 密集型行为,要降级让 I/O 进程有机会上
B刚完成 I/O 进就绪优先级I/O 行为体现,奖励
C长期在就绪队列优先级(防饥饿)等够久了该让它跑
D从就绪转运行不调还没积累行为反馈

为什么 A 是合理的降级时机

时间片用完意味着进程整段时间都在用 CPU——典型 CPU 密集型行为。如果让它保持高优先级,它会一直占 CPU,I/O 密集型进程的 I/O 完成后回到就绪队列也抢不过它。降级让 CPU 转给别人,整体利用率(CPU + I/O 并行)才高。

这就是多级反馈队列调度的底层思想:每用完一个时间片就降一级队列,逐渐筛出"最爱占 CPU"的进程放到低优先级慢慢跑;新到达和 I/O 完成的进程进高优先级队列,得到快速响应。

最终答案是 A

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数