假设有11个进程先后提出磁盘I/O请求,当前磁头正在110磁道处,并预向磁道号增加的方向移动。请求队列顺序为 30, 145, 120, 78, 82, 140, 20, 42, 165, 55, 65。请问:1. 用FCFS 调度算法,第一个访问的磁道为( )最后一个访问的磁道为( ) 平均移动磁道数为 ( )。 2. 用SCAN调度法,第一个访问的磁道为( )最后一个访问的磁道为( ), 平均移动磁道数为 ( )
时间: 2023-09-18 14:08:02 浏览: 97
1. 使用FCFS调度算法,首先按照请求的顺序依次访问每个磁道,所以第一个访问的磁道为30,最后一个访问的磁道为65。平均移动磁道数为:
```
(145-110) + (145-30) + (120-145) + (78-120) + (82-78) + (140-82) + (20-140) + (42-20) + (165-42) + (55-165) + (65-55)
= 35 + 115 + 25 + 42 + 4 + 58 + 120 + 22 + 123 + 110 + 10
= 574
```
2. 使用SCAN调度算法,磁头先向磁道号增加的方向移动到最大的请求磁道165,然后反向移动到最小的请求磁道20,最后再向磁道号增加的方向移动到最后一个请求磁道65。所以第一个访问的磁道为165,最后一个访问的磁道为65。平均移动磁道数为:
```
(165-110) + (165-78) + (165-140) + (20-0) + (42-20) + (65-42)
= 55 + 87 + 25 + 20 + 22 + 23
= 232
```
相关问题
简答题:假设有11个进程先后提出磁盘I/O请求,当前磁头正在100号磁道处,并预向磁道序号增加的方向移动。请求队列的顺序为36、145、120、78、82、140、20、42、165、55、60,分别用FCFS调度算法、SSTF调度算法和SCAN调度算法这3种调度算法完成上述请求,写出磁道的访问顺序和每次磁头移动的距离,并计算出平均移动磁道数。
首先,为了方便计算,我们假设磁盘的磁道数为200。
1. FCFS调度算法
按照先来先服务的原则,依次处理请求队列中的进程。
访问顺序:100 → 36 → 145 → 120 → 78 → 82 → 140 → 20 → 42 → 165 → 55 → 60
磁头移动距离:64 + 109 + 25 + 42 + 42 + 58 + 58 + 120 + 22 + 123 + 105 + 5 = 770
平均移动磁道数:770 / 11 = 70
2. SSTF调度算法
每次选取离当前磁头位置最近的请求进行处理。
访问顺序:100 → 78 → 82 → 55 → 60 → 42 → 36 → 20 → 120 → 140 → 145 → 165
磁头移动距离:22 + 4 + 24 + 27 + 5 + 18 + 16 + 16 + 20 + 25 + 5 = 182
平均移动磁道数:182 / 11 = 16.55(保留两位小数)
3. SCAN调度算法
磁头按照预定方向移动,扫描所有未处理的请求,到达磁盘的一端后返回另一端,继续扫描未处理的请求。
访问顺序:100 → 120 → 140 → 145 → 165 → 200 → 36 → 42 → 55 → 60 → 78 → 82 → 20
磁头移动距离:20 + 20 + 5 + 25 + 35 + 35 + 164 + 6 + 13 + 5 + 18 + 4 + 62 = 412
平均移动磁道数:412 / 11 = 37.45(保留两位小数)
综上所述,SSTF调度算法的平均移动磁道数最小,是最优的算法。
假定磁盘有200个磁道,当前有8个进程先后提出I/O操作,需要访问的磁道分别为:98,183,37,122,14,124,65,67,当前读写头起始位置为53,正在向小号移动。请采用扫描算法,计算总的磁头移动次数是多少?
根据扫描算法,磁头按一个方向移动,直到到达磁盘的一端,然后改变方向,继续移动,直到到达另一端。在这个过程中,磁头会经过所有需要访问的磁道。
根据题目,当前读写头起始位置为53,正在向小号移动,因此我们需要先将需要访问的磁道按照距离当前位置的距离从小到大排序。排序后的磁道为:65,67,37,14,98,122,124,183。
然后我们按照扫描算法的规则,从当前位置53开始,向小号方向移动,直到到达磁盘的一端,再改变方向,继续移动,直到经过所有需要访问的磁道。在这个过程中,磁头移动的距离就是总的磁头移动次数。
具体计算过程如下:
1. 从53到0,移动距离为53。
2. 从0到14,移动距离为14。
3. 从14到37,移动距离为23。
4. 从37到65,移动距离为28。
5. 从65到98,移动距离为33。
6. 从98到122,移动距离为24。
7. 从122到124,移动距离为2。
8. 从124到183,移动距离为59。
9. 从183到200,移动距离为17。
10. 从200到67,移动距离为133。
11. 从67到53,移动距离为14。
总的磁头移动距离为:53+14+23+28+33+24+2+59+17+133+14=380。
因此,总的磁头移动次数为380。