2.3.2 磁盘【译】

      硬盘由一或多个覆盖着可磁化涂料的铝板组成。早期这些铝板的直径大概是50厘米,现在通常是3到9厘米,笔记本电脑的磁盘里的已经能小于3厘米,而且还在缩小。磁头包含一个在其表面浮动的电感线圈,线圈停留在气垫上。当有正负电流通过磁头时,电流仅仅磁化了磁头下面的那部分,使得磁粉朝左或朝右对齐,取决于驱动电流的极性。当磁头越过一片已经磁化的区域时,磁头会感应出正/负电流,使得磁头能读出之前存储的位信息。这样一来,随着磁头下方盘片的旋转,比特流可以被写入,然后读出。磁盘道的结构如图2-19所示。
      随着磁盘旋转一周而写入的比特序列称作磁道。每个磁道都被分割成一些固定长度的扇区,典型的扇区包含512个数据字节,头部先导字节使得磁头能在读写之前同步好。先导字节之后是纠错码(ECC),可能是汉明码,或者更常见的,能纠正多位错的所罗门码。连续的扇区之间是小小的豁口。有些制造商使用磁盘在无格式状态下容量作为售卖参数(好似每个磁道都被数据填满),更诚实的厂商会用格式化后的容量,不包括先导字节,纠错码和数据豁口。格式化后的容量通常比格式化之前损失15%。

      所有的磁盘都有可移动机械臂,可以在轴上移入移出不同的径向距离,取决于哪个盘片在旋转。使用每个径向距离,能写出不同的磁道。磁道就是一系列的以主轴位圆心的同心圆。磁道的宽度取决于磁头的大小和磁头径向放置时的准确程度。在技术的支撑下,现在的磁盘每厘米能有50000个磁道,磁道的宽度在200纳米以内(1纳米=1/1000000毫米)。需要说明的是,磁道不是磁盘表面的物理凹槽,而仅仅是已磁化材料构成的环,这些环被内外侧小小的安全区域分隔着。
      磁道圆周附近的线性位密度和半径附近的位密度并不相同。换句话说,绕着磁道一周算得的位密度,和从主轴向外线性移动所计算出的位密度是不同的。磁道的位密度很大程度上取决于表面磁材料的纯度和空气质量。现在的磁盘的密度已经达到25G/厘米。径向密度取决于机械臂查找磁道的精度。因此径向方向的1比特比圆周上的大好几倍,如图2-19所示。
      超高密度磁盘利用了一种记录技术,比特的“长”边并不是沿着磁盘的圆周,而是与其垂直,直到氧化铁。这种技术被称作垂直记录,而且它已经用现实证明能存储超过100G/cm的数据。在接下来的几年内它会是该领域的主要技术。
      为了实现高纯度表面和高空气质量,大部分磁盘被密封在工厂里以防止灰尘进入盘体。这种磁盘开始时被称作温彻斯特盘,因为第一个设备(IMB所制)密封了30MB的固有存储,和30MB的可装卸存储。可能,这些30-30的磁盘提醒着人们记住温彻斯特30-30步枪在打开美国边境时启到的重要作用,也叫“温彻斯特”之刺。现在,它们仅仅被称为硬盘,为了和消失已久的,出现在早期个人计算机上的软盘做区分。在这个行业,给所有事物命名,并且让它们在30年后也不会变得可笑是很困难的一件事。
      大部分磁盘是由多个垂直堆叠起来的圆盘组成的,如图2-20所示。每个圆盘表面有自己的机械臂和磁头。所有机械臂是联动的,所以它们在同一时刻处于相同的径向位置。在相同径向位置的所有磁道统称为柱面。现在的个人电脑和服务器每个驱动通常有1到12个圆盘,具有2到24个记录面。高端磁盘能在一面上存储1TB数据。

      磁盘性能取决于许多因素。为了读写一个扇区,首先要把磁头移动到正确的径向位置。这个动作被称为寻道。平均寻道时间(随机磁道)介于5到10毫秒之间,虽然连续的两个磁道只要不到1毫秒。一但磁头找到径向位置,就会有延迟发生,称作旋转等待时间,直到目标扇区旋转到磁头下面。大部分磁盘的转速为5400转/分,7200转/分或者10800转/分,所以平均延迟(转速的一半)为3到6毫秒。传输时间取决于线密度和转速。国际上较为常见的传输速率是150MB/分,一个512字节的扇区花费大约3.5微秒。因此,寻道时间和旋转等待时间在传输时间中占据主要部分。随机读取整个磁盘上的某个扇区不是个有效率的做法。
      值得注意的是,由于先导字节(ECC),寻道时间和旋转等待时间,驱动的最大猝发传输速率和最大持续传输速率是不同的。最大猝发传输速率从磁头越过第一个数据位开始计算。计算机必须有能力处理以此速率输入的数据。然而,驱动只能在一个扇区内保持这个速率。对某些应用程序来说,比如多媒体,关心的是每秒的平均持续传输速率,不得不考虑必要的寻道和旋转等待延迟。
      高中数学讲过圆周周长计算公式,c=2*pi*r,表明外部的磁道比里面的有更多的线性距离。所有磁盘以固定角速度旋转,无论磁头在什么位置。在老式的驱动器中,制造商把最大可能线性密度用在最里面的磁道上,成功的降低了外侧更远磁道的线性位密度。假设磁盘的每个磁道有18个扇区,不管扇区在哪个柱面里,它都占用20度。
      现在用了一种不同的策略。柱面被划分成区域(每个驱动10到30个),从内向外每个磁道的扇区数逐渐增加。这使得保存磁道信息更加困难,但是增加了存储能力,存储能力看起来更重要些。所有的扇区都是相同的尺寸。一种有着5个区域的磁盘如图2-21所示。

      和每个驱动相连的是磁盘控制器,控制驱动的芯片。一些控制器包括了完整的CPU。控制器的任务包括从软件接受命令,比如读,写,格式化(全部写成前导字符),控制机械臂的运动,侦错和检错,把从内存读取的8位字节转成一系列字节流,反之亦然。某些控制器还能操作多个扇区的缓冲区,缓存未来可能会用到的的扇区,重新勘测损坏的扇区。上述最后的功能是因为有的扇区被损坏(永久性磁化)了。当控制器发现坏扇区时,它会用每个柱面或区域都有的备用扇区代替它。

posted @ 2019-10-26 17:03  夕晖  阅读(328)  评论(0编辑  收藏  举报