0%

磁盘调度

磁盘调度

存取时间 = 寻道时间 + 等待时间 + 读取时间

  • 寻道时间:磁头移动到目标磁道所需的时间(找磁道的时间)。
  • 等待时间:等待目标扇区旋转到磁头下方的时间(即旋转延迟,找扇区的时间)。
  • 读取时间:数据从磁盘传输到内存的时间(传输时间)。

多个磁片的同一个磁道会形成一个柱面,因此有时磁道也被称为柱面。

在同一扇区内读取数据属于顺序读取,而跨扇区读取则属于随机读取。

磁盘调度算法

磁盘调度分为移臂调度(找磁道)和旋转调度(找扇区)两类,通常先进行移臂调度,再进行旋转调度。

  • 先来先服务(FCFS):按照请求到达的先后顺序处理磁盘访问请求。优点是公平、实现简单;缺点是寻道时间可能较长,尤其是在请求分布较分散时。
  • 最短寻道时间优先(SSTF):优先处理与当前磁头位置距离最近的请求。优点是能减少平均寻道时间;缺点是可能导致某些距离较远的请求长期得不到处理(饥饿现象)。
  • 扫描算法(SCAN):磁臂从磁盘的一端出发,向另一端移动,途中处理所有经过磁道的请求;到达另一端后,反转方向继续处理。因类似电梯运行模式,也称为电梯算法。优点是避免了饥饿现象,寻道效率较稳定;缺点是对两端的请求处理可能存在延迟。
  • 循环扫描算法(CSCAN):磁臂只沿一个方向移动(如从里向外),处理途中所有请求;到达最外端后,直接快速返回到最内端的起始位置,再沿原方向继续处理。优点是使不同位置的请求响应时间更均匀;缺点是返回到起始位置时不处理任何请求,可能浪费部分时间。

先来先服务(FCFS)和最短寻道时间优先(SSTF)在处理请求时,可能会频繁改变磁臂的移动方向,而扫描算法(SCAN)和循环扫描算法(CSCAN)的磁臂移动方向相对固定

欢迎关注我的其它发布渠道

表情 | 预览
快来做第一个评论的人吧~
Powered By Valine
v1.3.10