机械硬盘:
-
盘片、盘面
每个盘片有两个盘面都可以读写。每一个盘面均有一个磁头(head),磁头号=盘面号。
-
磁头
即铁芯+通电流的线圈,线圈通以正向电流使呈N-S状态、通以反向电流使呈S-N状态,不同的磁化状态被记录在磁盘表面。读时,因为载体上小的磁化单元外部的磁力线通过磁头铁芯形成闭合回路,在铁芯线圈两端得到感应电压。根据感应电压的不同的极性,可确定读出为0或1。
所有磁头都落在同一个柱面上,同进同出。
-
磁道
磁盘表面被分为许多同心圆,每个同心圆称为一个磁道。每个磁道都有一个编号,最外面的是0磁道。
-
磁柱(cylinder)
各磁盘相同位置的磁道的集合,磁柱是分割槽(partition)的最小单位;柱面号=磁道号
-
扇区(sector)为最小的物理储存单位,大小一般为512bytes(0.5kb),扇区之间有间隔。
近三十年来,扇区大小一直是512字节。里面的扇区密度大(低密度存储方式)。每个扇区开始有一个索引信号(脉冲),内部有一个ID域一个数据域,之间有空隙。数据域还有同步字节;ID域记录物理块(扇区)地址:柱面号,磁头号,扇区号
如果说0面0道0扇区,“面”是指磁头,不是柱面。
例如最早的IBM公司的温切斯特磁盘如图所示,它是几乎所有现代硬盘产品的原型
图中,每个磁道由若干个扇区组成, 每个扇区记录一个数据块, 每个扇区由头空(间隙1)、ID域、 间隙(间隙2)、 数据域和尾空(间隙3)组成。 头空占17 个字节, 不记录数据, 用全1表示, 磁盘转过该区域的时间是留给磁盘控制器作准备用的; ID 域由同步字节 、 磁道号、 磁头号、 扇段号和相应的CRC码组成, 同步字节标志ID域的开始; 数据域占515个字节, 由同步字节、 数据和相应的CRC码组成, 其中真正的数据区占512字节 ; 尾空是在数据块的CRC码后的区域, 占20个字节, 也用全1表示。
但最近几年正迁移到更大、更高效的4096字节扇区,通常称为4K扇区。内外密度一样。
磁盘格式化操作指在盘面上划分磁道和扇区,并在扇区中填写ID域信息的过程
为了对大量扇区寻址,操作通常不直接管理每一个扇区,而是通过将若干个扇区组成的一个更大的集合来去进行操作管理。
这个比扇区更大的集合,在Windows下叫做簇(clust);在Linux下叫做块(block)。大小由操作系统决定,为2的n次方个扇区。
硬盘的操作流程如下:
所有磁头同步寻道(由柱面号控制)→ 选择磁头(由磁头号控制) → 被选中磁头等待扇区到达磁头下方(由扇区号控制) → 读写该扇区中数据
磁盘完成数据读写所需要的时间,是寻道时间、旋转延迟、传送时间(可忽略不计)的总和
Ta:存取时间
Ts:寻道时间
r:磁盘旋转速度(单位:转/秒)
b:要传送的字节数
N:一个磁道中的字节数
磁盘可能同时接收到若干I/O请求,如果随机选择并响应I/O请求,可能得到最坏的性能。系统采用一种调度策略,能够按最佳次序执行要求访问磁盘的多个I/O请求,以减少为若干I/O请求服务所需要消耗的总时间。
调度策略包括:移臂调度、旋转调度
-
移动臂调度
目的:使移动臂的移动时间最短,从而减少寻道总时间
调度策略:
1、先来先服务:移动臂是随机移动,寻道性能较差,按顺序处理请求,对所有进程公平
-
旋转调度
目的:使得旋转延迟的总时间最少
循环排序:通过优化I/O请求排序,在最少旋转圈数内完成位于同一柱面的访问请求。
旋转位置测定硬件和多磁头同时读写技术有利于提高旋转调度的效率
优化分布:通过信息在存储空间的排列方式来减少旋转延迟(交叉因子的概念)
把相邻扇区集中成簇读写
按柱面而非盘面进行数据读写(另一种集簇方式):连续记录数据时,先记录在同一柱面的不同磁道上,然后再更换柱面,可以减少数据读写时的移臂操作。
磁记录介质:用来保存信息
磁盘驱动器:包括读写电路、读/写转换开关、磁头与磁头定位伺服系统等
磁盘控制器:包括控制逻辑、时序电路、“并→串”转换和“串→并”转换电路等。(用于连接主机与盘驱动器)