Lecture 10 磁盘存储器

外部存储设备用于储存不经常使用的,数据量较大的信息,同时也是非易失的。

磁盘存储器

磁盘是由涂有可磁化材料非磁性材料(基材)构成的圆形盘片

  • 基材:铝,铝合金,玻璃

    玻璃基材的优势

    • 改善磁膜表面的均匀性,提高磁盘的可靠性
    • 显著减少整体表面瑕疵,以帮助减少读写错误
    • 能够支持磁头较低的飞行高度
    • 硬度更高,磁盘转动时更稳定
    • 更强的抗冲击和抗损伤能力

数据组织

image-20211104063813506
  • 磁头宽度 = 磁道宽度
  • 磁盘上的数据以扇区为单位(通常是512B)
  • 磁道和扇区之间都有间隙,用于防止精确度不够时误读
  • 磁道从外到里编号0~N

扇区划分有两种方式

恒定角速度

  • 增大记录在盘片区域上的信息位的间隔,使得磁盘能够以恒定角速度扫描信息。(靠外的扇区间隔大,靠内的间隔小)
  • 优点:能以磁道号和扇区号直接寻址各个数据块
  • 缺点:磁盘存储容量受到最内层磁盘所能实现的最大记录密度的限制(最外层增大间隙是很容易实现的,因此上限取决于最内层)

多重区域记录

  • 将盘面按离中心的距离划分为多个区域,一个区域内的磁道扇区数目一定(信息位间隔不同)。越远离中心的区域,容纳的扇区越多。

    区域的划分依据:两个相邻磁道多出来的周长可能不足以容纳一个新的扇区,因此只能采用与较内磁道相同的磁道数(稍微提高信息位间隔保证角速度恒定)

    换句话说,区域内采用恒定角速度方式,不同区域角速度不同

  • 这样就导致不同区域的读写速度不一样,需要更复杂的电路控制,当磁头切换区域时,读写时序也要相应变动。(增加了寻址时间)

  • 优点:增大了存储容量,突破了内圈最大记录密度的限制

磁盘格式化

image-20211104065857883

磁道必须有一些起始点和辨别每个扇区起点及终点的方法,这些信息应该嵌入每个扇区内

硬件的信息通常都采用嵌入的方式保存,比如cache,比如这里的扇区

每个扇区分为ID域信息域,每次格式化时ID域的信息不会改变

  • 设计的考量

    • ID域中的同步字节用于标识一个新的扇区进入磁头读写范围

    • ID域和数据域之间的间隙是为了给磁头处理信息的时间,即磁头读出ID域信息后需要判定是否是自己要读写的扇区。如果没有间隙,可能会在漏过一些数据后才判定要读该扇区。

    • 有时候格式化后的磁盘可以被恢复出来,这说明格式化时并没有破坏数据域的数据,而只是标识为不可用。

      类似于栈帧中的数据,pop后并没有破坏栈帧中的数据,只是在逻辑上不可访问

      事实上,上述格式化为高级格式化. 而低级格式化会清除所有扇区里的数据域. 同时,低级格式化是对物理意义的硬盘全部格式化(即所有逻辑分区), 且对硬盘有损伤

物理结构

  • 磁头

    • 固定头磁盘:每个磁道有一个读写头,所有磁头安装在跨越所有磁道的固定支架上。(使用很少
    • 可移动头磁盘:只有一个读写头,但在径向上可以伸缩移动
  • 可更换性

image-20211104071038680

不可更换磁盘永久安装在驱动器内,可更换磁盘可从磁盘驱动器中取出

  • 大多数磁盘两面都有可磁化涂层,称为双面磁盘,否则则是单面磁盘
  • 多层磁盘的组织结构

image-20211104071807881

多盘片磁盘使用可移动磁头,每面一个。所有盘片上相同的相对位置的一组磁道被称为一个柱面

  • 磁头机制

    • 磁头在盘片上方固定距离,有一个气隙。或磁头直接贴住磁表面(软盘)。

    • 第三种方式是温氏磁盘。
      磁道越窄,数据密度越大,但这也要求磁头更窄,离盘面更近(物理原因)。但磁头离盘面越近,出错率就更高。

      温氏磁盘磁头以气垫的形态轻停在磁盘表面,磁盘旋转时气压使磁头上升与磁盘分离,以极低的飞行高度读取数据。

读写机制

image-20211104074021573

磁头实际上是一个线圈

  • 写:磁头线圈不同的脉冲电流产生不同的磁化模式,写入磁盘
  • 读:不同的磁化模式产生不同的感应电流

因此,理论上读写可以用一个磁头,但为了提高效率(直接解析感应电流需要较长时间),采取一个单独的读磁头

读磁头由一个部分被屏蔽的磁阻传感器构成,MR材料的电阻取决于在它下面运动的介质的磁化方向,因此电流通过MR传感器时,电阻会因电流不同而不同,再以电压信号被检测出来。

读写时间

image-20211104073036035

  • 寻道时间

    移动磁盘臂到所要求的磁道处所花费的时间,包含初始启动时间,跨越若干磁道所用的时间。

  • 旋转延迟

    等待响应扇区的起始处到达磁头所需的时间,通常是磁道旋转半周所需的时间(平均)。

  • 传送时间

\[T=\frac{b}{rN} \]

\(T:\) 传送时间

\(b:\) 传送字节数

\(N:\) 每磁道的字节数

\(r:\) 转速

​ 因此总的平均访问时间为

\[T_a=T_s+\frac{1}{2r}+\frac{b}{rN} \]

\(T_s\)为平均寻道时间

​ 对于连续访问多个相邻磁道时,对计算有一定简化:

​ 每一个磁道都要考虑旋转延迟

​ 在未明确给出每个磁道的寻道时间时,通常只考虑第一个 磁道的寻道时间(相邻磁道切换很快)

​ 从以上的磁盘读写时间计算公式可知,当一大块数据连续存储时读写时间要短得多。但在实际应用时,碎片化存储也有很广泛的应用。因为碎片化存储分散了连续的数据块,使得磁盘空间得到更充分的利用(如果全部都是连续的,如果一个连续块中间的数据被删除,那这中间的空间就不能利用)

磁头调度

当有多个访问磁盘任务时,不同的磁头寻道策略效率不同。

先来先服务算法

按照请求访问的先后次序进行处理

posted @ 2021-11-04 21:25  xheiyan  阅读(223)  评论(0编辑  收藏  举报