Skip to content

2009年 408 操作系统 第 29 题

操作系统2009年选择题2分

题目

假设磁头当前位于第 105 道,正在向磁道序号增加的方向移动。现有一个磁道访问请求序列,采用 SCAN 调度得到的磁道访问序列是( )。

错因

B

服务完 110 后突然折返服务 68 / 45 / 35 / 12——但 SCAN 在当前方向(向增)上还有 170 / 180 / 195 没服务,不能中途折返。折返必须等当前方向上"没有更远请求"才发生。

C

向增方向扫完到 195 后反方向时序倒置:从 195 折返应该按从大到小经过 68, 45, 35, 12(按距离 195 的远近 = 磁道号大→小);选 12, 35, 45, 68 是按从小到大顺序——磁头会反复来回了,不符合"折返后顺序扫描"。

D

直接按从小到大全排——这是简单排序,不是 SCAN 调度。SCAN 要从当前位置 105 开始按方向扫描,先增后折返,不会把 12 放在最前面。

总解析

SCAN(电梯算法):磁头沿当前方向走,沿途服务请求;本方向上没有更远请求时折返反方向继续。

当前状态:磁头 = 105,方向 = 增大

梳理请求序列(从选项推得):

按方向分组

方向请求磁道排序
增方向(≥ 105)110, 170, 180, 195升序:110 → 170 → 180 → 195
减方向(< 105)68, 45, 35, 12降序(折返后离磁头近的先服务):68 → 45 → 35 → 12

SCAN 路径

105 → 110 → 170 → 180 → 195   (向增方向,到本方向最远)
   ↓ 折返
   → 68 → 45 → 35 → 12          (向减方向,按距离近的先)

完整服务序列110, 170, 180, 195, 68, 45, 35, 12

阶段磁道距离前一磁道
初始105
110+5
170+60
180+10
195+15(向增方向最远)
折返减68-127(一次大跳,到反方向首个请求)
45-23
35-10
12-23

关键:折返不在边界(这里没扫到磁道 0 或 199 然后折返),SCAN 在 195 折返——因为本方向上没有更远的请求了。这种"扫到最远请求即折返"的变体也常被叫做 LOOK,但 408 通常视为 SCAN 的标准做法。

最终答案是 A

最后更新:

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

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