原文
当多个进程同时访问磁盘时,需要通过磁盘调度算法来控制对磁盘的访问,使磁盘的平均寻道时间尽可能地少。
1. 先来先服务(FCFS)
公平、简单,但未优化,平均寻道时间较长。
2. 最短寻道时间优先(SSTF)
Short Seek Time First,优先访问距离当前磁头最近的磁道。容易会出现饥饿现象。
3. 扫描算法(SCAN)
SCAN 算法在 SSTF 算法之上,要求所请求访问的磁道在磁头当前移动方向上才能够得到调度。
因为考虑了移动方向,那么一个进程请求访问的磁道一定会得到调度。
当一个磁头自里向外移动时,移到最外侧会改变移动方向为自外向里,这种移动的规律类似于电梯的运行,因此又常称 SCAN 算法为电梯调度算法。
4. 循环扫描算法(CSCAN)
CSCAN 对 SCAN 进行了改动,要求磁头始终沿着一个方向移动。
从外到最里时,SCAN 会反向,而 CSCAN 则直接跳到最外,方向还是从外到里。