定义

磁盘调度算法(Disk Scheduling Algorithm)用于决定磁盘 I/O 请求的处理顺序,以减少磁头移动距离和总存取时间。

磁盘存取时间组成

  • 寻找时间:磁头移动到目标磁道的时间
  • 旋转延迟:目标扇区转到磁头下的时间
  • 传输时间:数据读写时间

常见算法

  • FCFS(先来先服务):按请求顺序处理。公平但效率低。
  • SSTF(最短寻找时间优先):优先处理距离当前磁头最近的请求。效率高但可能产生饥饿。
  • SCAN(电梯算法):磁头单向移动,处理途中的所有请求,到端点后反向。较均衡。
  • C-SCAN(循环扫描):磁头单向移动,到端点后快速回到起点继续同向扫描。更公平。
  • C-LOOK:C-SCAN 的改进,只需移动到最远请求位置即返回。

对比

算法平均寻道时间饥饿公平性
FCFS
SSTF
SCAN
C-SCAN最好