4.4.4 磁盘调度

2025-06-08 04:11:10 更新

(一)磁盘调度

磁盘是可被多个进程共享的设备。

为确保信息安全,系统在每一时刻只允许一个进程启动磁盘进行I/O操作。

磁盘调度方式:移臂调度(先)和旋转调度(后)。

磁盘调度目标:使磁盘平均寻道时间最少。

(二)磁盘驱动调度


算法

说明

优缺点

1

先来先服务(First-Come First-Served, FCFS)

据进程请求访问磁盘的先后次序进行调度。不会出现某进程请求长期得不到满足的情况。

优点:公平、简单

缺点:未优化寻道,平均寻道时间可能较长。

2

最短寻道时间优先(Shortest Seek Time First, SSTF)

要求访问的磁道与当前磁头所在磁道距离最近,使得每次寻道时间最短。

不能保证平均寻道时间最短。

3

扫描算法(SCAN)

又称电梯调度算法。

优先考虑磁头的当前移动方向。考虑要访问的磁道与当前磁道的距离。

优点:避免了饥饿现象

缺点:错过磁道的进程必须等待。

4

单向扫描调度算法(CSCAN)

磁头只做单向移动。


(三)旋转调度算法

当移动臂定位后,有多个进程等待访问该柱面时,应该选择延迟时间最短的进程对磁盘扇区进行访问。


场景

操作

1

进程请求访问的是同一磁道上不同编号的扇区

让首先到达读/写磁头位置下的扇区先传送

2

进程请求访问的是不同磁道上不同编号的扇区

3

进程请求访问的是不同磁道上具有相同编号的扇区

任选一个读/写磁头位置下的扇区传送