请求服务队列中要访问的磁道按接受顺序依次分别为:38,6,37,100,14,124,65,67. 磁头刚刚访问了20号磁道,当前处于30号磁道上。试按照FCFS、SSTF和SCAN调度算法,分别写出磁道响应的次序,并计算磁头移动的总磁道数。
时间: 2024-05-31 22:14:55 浏览: 116
首先,需要计算磁头移动的方向。以当前处于的30号磁道为基准,可以发现FCFS和SSTF算法的磁头移动方向都是随机的,而SCAN算法的磁头移动方向是向100号磁道移动,因此我们按照这个方向进行计算。
FCFS算法(先来先服务):
访问顺序:38,6,37,100,14,124,65,67
响应次序:30,38,6,37,100,14,124,65,67
总磁道数:|30-38|+|38-6|+|6-37|+|37-100|+|100-14|+|14-124|+|124-65|+|65-67| = 584
SSTF算法(最短寻道时间优先):
访问顺序:38,6,37,100,14,124,65,67
响应次序:30,37,38,65,67,100,124,14,6
总磁道数:|30-37|+|37-38|+|38-65|+|65-67|+|67-100|+|100-124|+|124-14|+|14-6| = 236
SCAN算法(电梯调度):
访问顺序:38,6,37,100,14,124,65,67
响应次序:30,37,38,65,67,100,124,65,38,37,14,6,67
总磁道数:|30-37|+|37-38|+|38-65|+|65-67|+|67-100|+|100-124|+|124-65|+|65-38|+|38-37|+|37-14|+|14-6|+|6-67| = 322
相关问题
有如下磁盘请求服务队列,要访问的磁道分别是76,82,64,13,22,124。现在磁头在53道上,若按最短寻道时间优先算法,磁头的移动道数是多少?
### 回答1:
按照最短寻道时间优先算法,磁头每次会选择距离当前磁头位置最近的磁道进行访问。因此,可以先将要访问的磁道按照距离当前磁头位置的距离排序,得到如下序列:64,76,82,22,13,124。
按照这个序列依次访问磁道,磁头移动的距离为:
```
|53 - 64| + |64 - 76| + |76 - 82| + |82 - 22| + |22 - 13| + |13 - 124|
= 11 + 12 + 6 + 60 + 9 + 111
= 209
```
因此,磁头的移动道数是209。
### 回答2:
最短寻道时间优先算法是根据磁头当前所在位置与下一个访问磁道位置之间的距离来确定顺序,选择距离最近的磁道先进行访问。
给定的磁道请求队列为76,82,64,13,22,124,磁头初始位置在53。
根据最短寻道时间优先算法:
第一次访问最近的磁道是64,磁头移动11道。
移动后磁道请求队列变为76,82,13,22,124。
第二次访问最近的磁道是76,磁头移动10道。
移动后磁道请求队列变为82,13,22,124。
第三次访问最近的磁道是82,磁头移动1道。
移动后磁道请求队列变为13,22,124。
第四次访问最近的磁道是13,磁头移动69道。
移动后磁道请求队列变为22,124。
第五次访问最近的磁道是22,磁头移动9道。
移动后磁道请求队列变为124。
第六次访问最近的磁道是124,磁头移动102道。
磁头总共移动的道数是11 + 10 + 1 + 69 + 9 + 102 = 202道。
所以按最短寻道时间优先算法时,磁头的移动道数是202道。
### 回答3:
根据最短寻道时间优先算法,磁头每次选择最接近当前磁道的下一个磁道进行访问,计算磁头的移动道数如下:
初始磁头位置:53
首先访问磁道76,移动步数为23(76-53)
接着访问磁道82,移动步数为6(82-76)
然后访问磁道64,移动步数为18(76-64)
再访问磁道13,移动步数为51(64-13)
继续访问磁道22,移动步数为9(22-13)
最后访问磁道124,移动步数为102(124-22)
总共移动步数为23+6+18+51+9+102=209。
所以根据最短寻道时间优先算法,磁头的移动道数是209。
简答题:假设有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调度算法的平均移动磁道数最小,是最优的算法。