(一)磁盘调度
磁盘是可被多个进程共享的设备。
为确保信息安全,系统在每一时刻只允许一个进程启动磁盘进行I/O操作。
磁盘调度方式:移臂调度(先)和旋转调度(后)。
磁盘调度目标:使磁盘平均寻道时间最少。
(二)磁盘驱动调度
算法 | 说明 | 优缺点 | |
1 | 先来先服务(First-Come First-Served, FCFS) | 据进程请求访问磁盘的先后次序进行调度。不会出现某进程请求长期得不到满足的情况。 | 优点:公平、简单 缺点:未优化寻道,平均寻道时间可能较长。 |
2 | 最短寻道时间优先(Shortest Seek Time First, SSTF) | 要求访问的磁道与当前磁头所在磁道距离最近,使得每次寻道时间最短。 | 不能保证平均寻道时间最短。 |
3 | 扫描算法(SCAN) | 又称电梯调度算法。 优先考虑磁头的当前移动方向。考虑要访问的磁道与当前磁道的距离。 | 优点:避免了饥饿现象 缺点:错过磁道的进程必须等待。 |
4 | 单向扫描调度算法(CSCAN) | 磁头只做单向移动。 |
(三)旋转调度算法
当移动臂定位后,有多个进程等待访问该柱面时,应该选择延迟时间最短的进程对磁盘扇区进行访问。
场景 | 操作 | |
1 | 进程请求访问的是同一磁道上不同编号的扇区 | 让首先到达读/写磁头位置下的扇区先传送 |
2 | 进程请求访问的是不同磁道上不同编号的扇区 | |
3 | 进程请求访问的是不同磁道上具有相同编号的扇区 | 任选一个读/写磁头位置下的扇区传送 |