磁盘调度算法笔记和练习题

先来先服务FCFS

在这里插入图片描述

最短寻道时间优先SSTF

在这里插入图片描述

扫描调度SCAN

它是一次只响应一个方向上的请求,这个方向上的请求都响应完了,再掉头处理另一个方向上的。

有点像电梯,向上时只要上面楼层还有人在等,就不会向下,故又叫电梯调度算法。
在这里插入图片描述

练习题

假设一个磁盘有100个柱面,编号为0~99,在完成了磁道25处的请求后,磁头当前正在磁道43处服务。磁盘请求的柱面按38、6、40、2、20、22、10的次序到达磁盘驱动器,寻道时每移动一个柱面需要10ms,计算以下算法的总寻道时间:
(1)先来先服务算法
(2)最短寻道时间优先算法
(3)电梯调度算法。

【解答】

  1. 磁盘请求的柱面为38、6、40、2、20、22、10,FCFS算法就按照请求到达地次序依次响应。
被访问的下一个磁道号 移动的磁道数
3838 4338=543-38=5
66 386=3238-6=32
4040 406=3440-6=34
22 402=3840-2=38
2020 202=1820-2=18
2222 2220=222-20=2
1010 2210=1222-10=12

故先来先服务算法的总寻道时间为10(5+32+34+38+18+2+12)=1410ms10*(5+32+34+38+18+2+12)=1410ms


  1. 先将磁盘请求按磁道从小到大排个序:2、6、10、20、22、38、40,SSTF算法是先响应离自己(磁头所在磁道)最近的磁道上的请求。
    在这里插入图片描述
    当前在43,最近的是40。
被访问的下一个磁道号 移动的磁道数
4040 4340=343-40=3
3838 4038=240-38=2
2222 3822=1638-22=16
2020 2220=222-20=2
1010 2010=1020-10=10
66 106=410-6=4
22 62=46-2=4

故最短寻道时间优先算法的总寻道时间为10(3+2+16+2+10+4+4)=410ms10*(3+2+16+2+10+4+4)=410ms


  1. 还是先将磁盘请求按磁道从小到大排个序:2、6、10、20、22、38、40,题目说了磁头是完成了磁道25处的请求后,当前正在磁道43处服务,可知磁头的移动方向是向外,循环扫描算法是先依次服务完当前方向上的再转头。
    在这里插入图片描述

但是此时所在磁道43处以外已经没有请求了,所以掉头扫描,和SSTF算法结果一样,总寻道时间为410ms410ms

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章