硬盘知识大杂烩(二)
  硬件篇
  咱们现打开一个硬盘,解开神秘面纱,看看里面的秘密(见下图)。
硬盘主要由盘片、磁头和电子控制板组成。
其中盘片就是记录信息(数据和程序)载体,正常工作时是高速旋转的。磁头读取数据,磁头工作时在操作系统及控制电子版的控制下经常移动(盘片的径向方向移动),到相应的地方读取盘片上的数据,并送至内存、 CPU ,做进一步的处理。电子控制板控制盘片马达及磁头,协调的工作。同时里面有着硬盘的固件,表明厂家及磁盘参数等数据。
当系统向硬盘写入数据时,磁头中“写数据”电流产生磁场使盘片表面磁性物质状态发生改变,并在写电流磁场消失后仍能保持,这样数据就存储下来了;当系统从硬盘中读数据数据恢复时,磁头经过盘片指定区域,盘片表面磁场使磁头产生感应电流或线圈阻抗产生变化,经相关电路处理后还原成数据。
 
基本名词和概念
有关硬盘数据结构的基本名词、概念一大堆,有的还要花费一点时间才能真正理解。初次接触的人头会晕(比如我),难者不会,会者不难。耐着性子,慢慢啃,耐不住就闪人吧,别糟蹋自己了。下面罗列均是一些比较重要的。
 
柱面 Cylinder 、磁头数 Head 、扇区 S  Sector   CHS
 硬盘由很多 盘片(platter) 组成,每个盘片的每个面都有一个读写磁头。如果有 N 盘片。就有 2N 个面,对应 2N 磁头(Heads) ,从 0 1 2 开始编号。每个盘片被划分成若干个同心圆磁道 ( 逻辑上的,是不可见的。 ) 每个盘片的划分规则通常是一样的。这样每个盘片的半径均为固定值 R 的同心圆再逻辑上形成了一个以电机主轴为轴的柱面 (Cylinders) 从外至里编号为 0 1 2…… 每个盘片上的每个磁道又被划分为几十个扇区 (Sector) ,通常的容量 512byte ,并按照一定规则编号为 1 2 3…… 形成 Cylinders×Heads×Sector 个扇区。这三个参数即是硬盘的物理参数。我们下面的很多实践需要深刻理解这三个参数的意义。
这是一种三维参数进行空间定位的方法。计算机就是根据这些参数确定相应的磁头,到相应的柱面(环道)和相应的扇区处读取数据。估计过去的硬盘由许多盘片和磁头构成的,现在磁盘仅有一片盘片一个磁头,但沿用了三维参数进行空间定位的方法。平面结构是完全可以用三维参数进行空间定位的。
 
标定扇区位置除了用 CHS 法,还有一种方法:绝对扇区号。两者是一一对应的。比如 CHS 0 0 1= 绝对 0 扇区, CHS 0 0 2= 绝对 1 扇区… CHS 0 0 63= 绝对 62 扇区, CHS 0 1 1= 绝对 63 扇区 …, 可以看出 CHS 相当于一个三位数, S 为个位, H 为十位, C 为百位,其中 S 大于 63 时进位,自身变为 1 H 大于 254 时进位,自身变为 0 。这里还有一个要注意的是, C H 最小值是 0 S 最小值则是 1
从空间上理解,假设数据依次输入到(即存盘)硬盘里:先写第一个磁道的第一个扇区,写满一个磁道的 63 个扇区,就转为下一个磁头…,等这个柱面全写完,再移到下个柱面第一磁头第二个磁道,如此和绝对扇区号对应。后面讲的每个分区实际就是是厚度不同的空心同心圆筒。呵呵,慢慢理解去吧。