首先介绍主要的的四种磁头调度算法

(一)先来先服务算法(FCFS)

1、算法思想:按访问请求到达的先后次序服务。

2、优点:简单,公平。

3、缺点:效率不高,相邻两次请求可能会造成最内到最外的柱面寻道,使磁头反复移动,增加了服务时间,对机械也不利。

4、例子:

假设磁盘访问序列:98,183,37,122,14,124,65,67。读写头起始位置:53。求:磁头服务序列和磁头移动总距离(道数)。

由题意和先来先服务算法的思想,得到下图所示的磁头移动轨迹。由此:

磁头服务序列为:98,183,37,122,14,124,65,67

磁头移动总距离=(98-53)+(183-98)+|37-183|+(122-37)+|14-122|+(124-14)+|65-124|+(67-65)=640(磁道)

(二)最短寻道时间优先算法(SSTF)

1、算法思想:优先选择距当前磁头最近的访问请求进行服务,主要考虑寻道优先。

2、优点:改善了磁盘平均服务时间。

3、缺点:造成某些访问请求长期等待得不到服务。

4、例子:对上例的磁盘访问序列,可得磁头移动的轨迹如下图。请同学自己给出磁头服务序列并计算磁头移动总距离。

(三) 扫描算法(电梯算法)(SCAN)

1、算法思想:当设备无访问请求时,磁头不动;当有访问请求时,磁头按一个方向移动,在移动过程中对遇到的访问请求进行服务,然后判断该方向上是否还有访问请求,如果有则继续扫描;否则改变移动方向,并为经过的访问请求服务,如此反复。如下图所示:

扫描算法(电梯算法)的磁头移动轨迹

2、优点:克服了最短寻道优先的缺点,既考虑了距离,同时又考虑了方向。

3、例子:下图是一个示例。请同学自己写出一个可能的磁盘访问序列,并计算磁头移动总距离。

扫描算法图例

(四)单向扫描调度算法(CSCAN)

算法思想:

1、总是从0号柱面开始向里扫描。

2、按照各自所要访问的柱面位置的次序去选择访问者。

3、移动臂到达最后一个柱面后,立即带动读写磁头快速返回到0号柱面。

4、返回时不为任何的等待访问者服务。

5、返回后可再次进行扫描。

下面是作业题目及解法:

1. 若干个等待访问磁盘者依次要访问的柱面为 20,44,40,4,80,12,76,假设每移动一个柱面需要3ms时间,移动臂当前位于40号柱面,磁头正向磁道好增加的方向移动,

请按 FCFS, SSTF, SCAN 算法分别计算为完成上述访问总共花费的寻找时间。

(1)FCFS算法:

移动臂的移动次序为

40 → 20 → 44 → 40 → 4 → 80 → 12 → 76

移动的柱面数 = 20 +24+4+36+76+68+64=292

共花费 3×292=876毫秒

(2)SSTF算法:

移动臂的移动次序为

40 → 44 → 20 → 12 → 4 → 76 → 80

移动的柱面数 = 4+24+8+8+72+4=120

共花费 3×120=360毫秒

(3)SCAN算法:

移动臂的移动次序为

40 → 44 → 76 → 80 → 20 → 12 → 4

移动的柱面数 = 4+32+4+60+8+8=116

共花费 3×116=348毫秒

2.假设计算机系统采用CSCAN(循环扫描)磁盘调度策略,使用2KB的内存空间记录16384个磁盘的空闲状态 
⑴请说明在上述条件如何进行磁盘块空闲状态的管理。
⑵设某单面磁盘的旋转速度为每分钟6000转,每个磁道有100个扇区,相临磁道间的平均移动的时间为1ms。若在某时刻,磁头位于100号磁道处,并沿着磁道号增大的方向移动,磁道号的请求队列为50,90,30,120对请求队列中的每个磁道需读取1个随机分布的扇区,则读完这个扇区点共需要多少时间?需要给出计算过程。

(3)如果将磁盘替换为随机访问的 Flash 半导体存储器(如 U 盘、 SSD 等),是否有比 CSCAN 更高效的磁盘调度策略?若有,给出磁盘调度策略的名称并 说明理由;若无,说明理由。

(1). 2KB = 2*1024*8bit = 16384bit。因此可以使用位图法进行磁盘块空闲状态管理,每1bit表示一个磁盘块是否空闲。 
(2). 每分钟6000转,转一圈的时间为0.01s,通过一个扇区的时间为0.0001s。 则平均旋转延迟时间为0.01/2 = 5ms, 平均平均读取时间为0.1ms。

根据CSCAN算法,被访问的磁道号顺序为100 ,120 , 30, 50 , 90,因此,寻道用去的总时间为:(20 + 90 + 20 + 40)* 1ms = 170ms
总共要随机读取四个扇区,用去的时间为:(0.01*0.5 + 0.0001)*4 = 0.0204s = 20.4ms
所以,读完这个扇区点共需要 170ms + 20.4ms = 190.4ms。

(3)采用FCFS调度策略更高效。随机访问的FLASH半导体存储器的物理结构不需要考虑寻道时间和旋转时间延时,可直接按请求的先后顺序执行。

转载于:https://www.cnblogs.com/tjulym/p/5003655.html

操作系统原理之磁盘调度相关推荐

  1. 操作系统实验4—磁盘调度

    操作系统实验4-磁盘调度 文章目录 操作系统实验4-磁盘调度 实验描述 设计思路 上机代码 测试结果 心得体会 实验描述 实验内容: 编写一个磁盘调度程序,模拟操作系统对磁盘的调度. 实验目的: 本实 ...

  2. 【2021/7/19更新】【梳理】简明操作系统原理 第十二章 机械硬盘 磁盘I / O的调度(docx)

    配套教材: Operating Systems: Three Easy Pieces Remzi H. Arpaci-Dusseau Andrea C. Arpaci-Dusseau Peter Re ...

  3. 【操作系统原理及Linux实践】 四cpu调度scheduling

    课程: 操作系统原理及Linux实践 cpu调度 调度算法 先来先服务算法(FCFS) Round robin 时间片轮转 最短作业优先 优先级调度算法

  4. 操作系统之磁盘调度——SCAN实例讲解

    操作系统之进程调度--优先权法和轮转法(附上样例讲解) 操作系统之银行家算法-详解流程及案例数据 操作系统之多线程编程-读者优先/写者优先详解 操作系统之存储管理--FIFO算法和LRU算法 操作系统 ...

  5. 操作系统磁盘调度_磁盘调度| 操作系统

    操作系统磁盘调度 磁盘调度 (Disk Scheduling) One of the major duties of the operating is that, to use the hardwar ...

  6. 操作系统原理,交互式系统常见的调度算法,时间片轮转RR,虚拟轮转VRR,最高优先级调度,优先级反转问题与应对

    操作系统原理,交互式系统常见的调度算法,时间片轮转RR,虚拟轮转VRR,最高优先级调度,优先级反转问题与应对 一.交互式系统中采用的调度算法: 1.时间片轮转调度RR,round robin 2.最高 ...

  7. 模拟磁盘调度 课程设计(操作系统 C语言)

    (乾坤未定,你我皆是黑马!) 期末用了大概一周的时间完成了操作系统的课程设计,本来是随便选的一个题目,(因为上课的时候隐隐约约有点印象)然后仔细研究一下发现里面的算法还是挺简单的!然后额外加了一些附加 ...

  8. 操作系统----磁盘调度(电梯调度算法)

    一.实验内容 模拟电梯调度算法,实现对磁盘的调度. 二.实验目的 磁盘是一种高速.大量旋转型.可直接存取的存储设备.它作为计算机系统的辅助存储器,负担着繁重的输入输出任务,在多道程序设计系统中,往往同 ...

  9. 计算机四级操作系统原理知识汇总,2015年全国计算机四级《操作系统原理》考试内容...

    2015年全国计算机四级<操作系统原理>考试内容 一.操作系统概述 1.操作系统基本概念.特征.分类 2.操作系统主要功能 3.操作系统发展演化过程,典型操作系统 4.操作系统结构设计,典 ...

最新文章

  1. kdd cup 2019
  2. Controller类的方法上的RequestMapping一定要写在Controller类里吗?
  3. 浅谈网络游戏《天龙X部》的文件加密格式
  4. Sequential 顺序模型和 Model 模型【TensorFlow2入门手册】
  5. 获取Docker中容器的信息
  6. python哈夫曼编码注意_Python 算法(2) 哈夫曼编码 Huffman Encoding
  7. Apache TomEE(和Tomcat)的自签名证书
  8. C语言的细小知识点整理
  9. hive(3)HiveQL数据定义
  10. JAVA_返回一个数值的相反数的几种方式.
  11. 允许其他网络用户通过此计算机的internet连接来连_「Azure云」什么是Azure虚拟网络?...
  12. python右对齐函数_Python这68个内置函数,建议你吃透!
  13. 【转】使用spring @Scheduled注解执行定时任务
  14. 愤怒!竟然还有学校还在教 Java 的 Swing
  15. Win11添加日语输入法的教程
  16. Linux debian安装DBeaver连接MySQL8、导入和导出数据库详细教程
  17. 计算机网络-CSMA/CD协议
  18. 2015计算机职称水平考试,2015计算机职称等级考试技巧汇总.doc
  19. 天将降大任于斯人,必先灭其QQ……后必过CPA也!
  20. 使用第三方短信服务商云片发送短信(php样例)

热门文章

  1. DB_Links创建际删除
  2. c# 模拟window 操作鼠标|winapi
  3. WordPress 5.2 Beta 3 发布,要求 PHP 5.6.20 以上版本
  4. 并发编程实战-读书笔记
  5. 5.对象和面向对象3——类的定义
  6. h.264的POC计算
  7. XNA之RPG游戏开发教程之三
  8. 自己开发的Grid组件 针对IOS的
  9. mysql服务器配置优化
  10. 毕业2年从月薪400到6000 继续网络梦