操作系统 --- 磁盘调度算法


多道环境下,进程并发运行随机提出 I/O 请求,需要操作系统为每个磁盘维护一个访问请求队列。如何选择者就是 磁盘调度算法 。磁盘调度算法考虑的就是使得平均寻道时间最短 。

例题:假定磁盘有200个磁道,当前有9个访问者(进程)先后提出IO操作,需要访问的磁道分别为:55,58,39,18,90,160,150,38,184,又假定当前磁头位置为100#。磁头正从外向里运动。

1、先来先服务调度算法(FCFS)

按请求访问者的先后顺序
在这里插入图片描述优点:这个策略是公平的,每个请求都会得到处理
缺点:该算法本身出发点未考虑寻道优化,性能接近于随机调度,因此性能很差。

2、最短寻找时间调度算法(SSTF)

选择寻找时间最短的访问者调度
策略:选择使磁头臂从当前位置开始移动距离最短的IO访问者,即最短寻道时间的请求者,
问题:每次选择距离最短者同时,忽略了可能由于不断的有新的IO请求进程加入队列中,且与当前磁头位置较近,会使得原请求队列中的距离远的访问者总得不到调度,产生"饥饿现象"。
在这里插入图片描述

3、电梯调度算法(SCAN)

从移动臂当前位置开始沿着臂的移动方向去选择离当前移动臂最近的那个柱面的访问者

磁道编号是从外到里的,即由内到外磁道号越来越小。
从当前所在磁道号,从外向里运动,再从里向外运动,或反之。这样就避免了饥饿现象,由于这种移臂调度规律颇似电梯的运动,因而称为电梯算法。

在这里插入图片描述

4、循环扫描算法(CSCAN)

为了减少这种延迟,规定磁头单向读 为了减少这种延迟,规定磁头单向读/写运动 写运动 (如只能由内向外),完成读写后 ,立即返到最小/大磁道号的位置 (构成循环 ),再进行扫描。即 CSCAN算法。
在这里插入图片描述

5、磁盘调度算法练习题

题目:
在这里插入图片描述答案:
在这里插入图片描述

  • 31
    点赞
  • 189
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

凤求凰的博客

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值