当前位置:   article > 正文

计算机操作系统-磁盘调度算法_某磁盘组共有200个柱面,由外至内依次编号为0,1,2……199。i/o请求以10,100,191,

某磁盘组共有200个柱面,由外至内依次编号为0,1,2……199。i/o请求以10,100,191,31

磁盘调度算法

当多个访盘请求等待时,采用一定的策略,对这些请求的服务顺序调整安排,旨在降低平均磁盘服务时间,达到公平、高效。
公平:一个I/O请求在有限时间内满足
高效:减少设备机械运动所带来的时间浪费


先来先服务 FCFS

按访问请求到达的先后次序服务
优点:简单公平
缺点:效率不高,相邻两次请求可能会造成最内到最外的柱面寻到。使磁头反复移动,增加了服务时间


最短寻道时间优先 SSTF

优先选择距当前磁头最近的访问请求进行服务,主要考虑寻道优先
优点:改善了磁盘平均服务时间
缺点:造成某些访问请求长期等待得不 到服务


扫描算法/电梯调度算法 SCAN

克服了最短寻道优先的缺点,既考虑了距离,同时又考虑了方向。
具体做法:当设备无访问请求时,磁头不动;当有访问请求时,磁头按一个方向移动,在移动过程中对遇到的访问请求进行服务,然后判断该方向上是否还有访问请求,如果有则继续扫描;否则改变移动方向,并为经过的访问请求服务,如此反复
在这里插入图片描述
电梯算法杜绝了饥饿,但当请求对磁道的分布是均匀时,磁头回头,近磁头端的请求很少(因为磁头刚经过),而远端请求较多,这些请求等待时间要长一些。


单向扫描调度算法

总是从最里的欲访问柱面开始向外扫描。移动臂到达最外一个访问柱面后,立即带动读写磁头快速返回。返回时不为任何的等待访问者服务。返回后可再次进行扫描,也称循环扫描算法


调度算法的选择

实际系统相当普遍采用最短寻道时间优先算法,因为它简单有效,性价比好;
扫描算法更适于磁盘负担重的系统;
磁盘负担很轻的系统也可以采用FCFS算法
一般要将磁盘调度算法作为操作系统的单独模块编写,利于修改和更换


例题

假设磁盘访问序列:
98,183,37,122,14,124,65,67
读写头起始位置:53

安排磁头服务序列
计算磁头移动总距离(道数)

先来先服务

在这里插入图片描述
最短寻道时间优先
在这里插入图片描述
电梯算法
在这里插入图片描述
单向扫描
在这里插入图片描述


练习

某磁盘组有200个柱面,由内至外依次编号0,1,…,199。I/O请求次序为10,100,191,31,20,150,32。假设磁臂当前位于柱面98,对于FCFS,SSTF,Scan,C-Scan磁盘调度算法,分别计算磁道移动量。对于C-Scan算法,假定磁臂当前移动方向由外向内

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/395024
推荐阅读
相关标签
  

闽ICP备14008679号