【操作系统】磁盘的四种基本调度算法(图表说明)
磁盘基本结构
下图有4个扇区、3条磁道、1根磁壁(3个不同位置)
调度算法
按时间顺序,进程请求的磁道号
时间(ms) | 磁道号 | 进程号 |
---|---|---|
10 | 5 | 1 |
30 | 4 | 1 |
40 | 6 | 2 |
50 | 7 | 3 |
60 | 8 | 2 |
80 | 3 | 2 |
假设磁壁一开始在5号磁道
先来先服务
被访问的下一个磁道号 | 移动的磁道数 |
---|---|
5 | 5-5=0 |
4 | 5-4=1 |
6 | 6-4=2 |
7 | 7-6=1 |
8 | 8-7=1 |
3 | 8-3=5 |
平均寻道长度:(0+1+2+1+1+5)/6=1.67
最短寻道时间优先
被访问的下一个磁道号 | 移动的磁道数 |
---|---|
3 | 5-3=2 |
4 | 4-3=1 |
5 | 5-4=1 |
6 | 6-5=1 |
7 | 7-6=1 |
8 | 8-7=1 |
平均寻道长度:(2+1+1+1+1+1)/6=1.17
扫描算法
磁壁来回扫描,磁壁从需要访问的最小磁道号移动到需要访问的最大磁道号,再反向从需要访问的最大磁道号移动到需要访问的最小磁道号
被访问的下一个磁道号 | 移动的磁道数 |
---|---|
5 | 5-5=0 |
6 | 6-5=1 |
7 | 7-6=1 |
8 | 8-7=1 |
4 | 8-4=4 |
3 | 4-3=1 |
平均寻道长度:(0+1+1+1+4+1)/6=1.33
循环扫描算法
磁壁只有一个移动方向,比如只能从需要访问的最小磁道号移动到需要访问的最大磁道号,当没有更大的磁道号需要访问时,移动到需要访问的最小磁道号
被访问的下一个磁道号 | 移动的磁道数 |
---|---|
5 | 5-5=0 |
6 | 6-5=1 |
7 | 7-6=1 |
8 | 8-7=1 |
3 | 8-3=5 |
4 | 4-3=1 |
平均寻道长度:(0+1+1+1+5+1)/6=1.5