磁盘

    技术2022-07-10  123

    磁盘存储器

    磁盘存储器的概述磁盘的结构磁盘调度算法1. 先来先服务2.最短寻道时间优先3.基于扫描的磁盘调度算法(电梯算法)

    磁盘存储器的概述

    磁盘存储器是计算机系统中最重要的存储设备,其中存放了大量的文件。对文件的读,写操作都涉及到了对磁盘的访问。

    磁盘的结构

    盘面(Platter):一个磁盘有多个盘面;磁道(Track):盘面上的圆形带状区域,一个盘面可以有多个磁道;扇区(Track Sector):磁道上的一个弧段,一个磁道可以有多个扇区,它是最小的物理储存单位,目前主要有 512 bytes 与 4 K 两种大小;磁头(Head):与盘面非常接近,能够将盘面上的磁场转换为电信号(读),或者将电信号转换为盘面的磁场(写);制动手臂(Actuator arm):用于在磁道之间移动磁头;主轴(Spindle):使整个盘面转动。

    磁盘调度算法

    在了解磁盘的调度算法之前需要了解一下磁盘的访问时间。

    读写一个磁盘块的时间的影响因素有: 旋转时间(主轴转动盘面,使得磁头移动到适当的扇区上)寻道时间(制动手臂移动,使得磁头移动到适当的磁道上)实际的数据传输时间 寻道时间Ts:这是指把磁臂(磁头)移动到指定的磁道上所经历的时间。该时间是启动磁臂的时间s与磁头移动n条磁道所花费的时间之和。

    Ts = m * n +s m是1个常数,与磁盘驱动速度有关。对一般的磁盘,m = 0.2;对高速磁盘,m <= 0.1 磁臂启动时间约为2ms.

    磁盘调度的目标就是使磁盘的平均寻道时间最少。

    1. 先来先服务

    FCFS, First Come First Served

    按照磁盘请求的顺序进行调度。 优点是公平和简单。缺点也很明显,因为未对寻道做任何优化,使平均寻道时间可能较长。

    2.最短寻道时间优先

    SSTF, Shortest Seek Time First

    优先调度与当前磁头所在磁道距离最近的磁道。 虽然平均寻道时间比较低,但是不够公平。如果新到达的磁道请求总是比一个在等待的磁道请求近,那么在等待的磁道请求会一直等待下去,也就是出现饥饿现象。具体来说,两端的磁道请求更容易出现饥饿现象。

    3.基于扫描的磁盘调度算法(电梯算法)

    SCAN,又称电梯算法。

    该算法优先考虑磁头当前移动的方向。如果此时磁头正向外面移动,它会优先考虑进行外面的的磁道访问。这个算法依旧参考当前磁道和欲访问磁道间的距离。当一个磁头自里向外进行移动时,首先考虑外面的磁道访问,并且考虑当前磁道和欲访问磁道间的距离,当外面的磁道没有访问请求时,才开始考虑向里移动。这样做就能避免SSTF算法的饥饿情况。 这样向外(内)就一直先向外(内)直到没有向外(内)的请求,类似于电梯的运行,因此也叫做电梯算法。
    Processed: 0.010, SQL: 9