硬盘驱动器基础知识

硬盘是一个密封的单元,包含堆叠的多个盘片。硬盘可以水平或垂直安装。在本说明中,硬盘驱动器是水平安装的。

电磁读/写头位于每个盘片的上方和下方。随着盘片旋转,驱动头向中心表面移动,向边缘移动。这样,驱动头可以到达每个盘片的整个表面。

制作曲目

在硬盘上,数据存储在薄的同心带中。驱动头在一个位置时可以读取或写入圆环或称为磁道的带。一个 3.5 英寸的硬盘上可以有上千个磁道。每个磁道内的部分称为扇区。扇区是磁盘上最小的物理存储单元,大小几乎总是 512 字节 (0.5 kB)。

下图显示了一个带有两个盘片的硬盘。

硬盘驱动器的部件

硬盘驱动器基础知识_linux

旧硬盘驱动器的结构(即在 Windows 95 之前)将参考柱面/磁头/扇区表示法。当所有驱动磁头在磁盘上的相同位置时形成一个柱面。

相互堆叠的轨道形成一个圆柱体。现代硬盘驱动器正在慢慢消除这种方案。所有新磁盘都使用转换因子来使它们的实际硬件布局看起来是连续的,因为这是从 Windows 95 开始的操作系统喜欢的工作方式。

对于计算机的操作系统来说,磁道是逻辑结构而非物理结构,是在磁盘低级格式化时建立的。磁道被编号,从 0(磁盘的最外边缘)开始,一直到编号最高的磁道,通常为 1023,(靠近中心)。同样,硬盘上有 1,024 个柱面(编号从 0 到 1023)。

盘片堆叠以恒定速度旋转。驱动磁头在靠近磁盘中心定位时从比磁盘外边缘处的表面更慢地经过的表面读取。

为了补偿这种物理差异,靠近磁盘外部的磁道填充数据的密度低于靠近磁盘中心的磁道。不同数据密度的结果是可以在相同的时间段内从任何驱动器磁头位置读取相同数量的数据。

磁盘空间按照标准计划填充数据。一个盘片的一侧包含为硬件磁道定位信息保留的空间,对操作系统不可用。因此,包含两个盘片的磁盘组件具有三个可用于数据的面。轨道定位数据在工厂组装期间被写入磁盘。系统磁盘控制器读取此数据以将驱动器磁头放置在正确的扇区位置。

部门和集群

扇区是磁盘上最小的物理存储单元,其大小几乎总是 512 字节,因为 512 是 2 的幂(2 的 9 次幂)。之所以使用数字 2,是因为最基本的计算机语言有两种状态——开和关。

每个磁盘扇区都使用工厂磁道定位数据进行标记。扇区识别数据被写入扇区内容之前的区域,并识别扇区的起始地址。

将文件存储在磁盘上的最佳方法是以连续序列的形式存储,即流中的所有数据在一行中端到端存储。由于许多文件大于 512 字节,因此由文件系统分配扇区来存储文件的数据。例如,如果文件大小为 800 字节,则为该文件分配两个 512 k 扇区。

一个簇可以由一个或多个连续扇区组成。扇区的数量始终是 2 的指数。一个簇可以包含 1 个扇区 (2^0),或者更常见的是 8 个扇区 (2^3)。一个簇可以包含的扇区的唯一奇数是 1。它不能是 5 个扇区或不是 2 的指数的偶数。它不会是 10 个扇区,但可以是 8 或 16 个扇区。

它们被称为集群,因为空间是为数据内容保留的。此过程可保护存储的数据不被覆盖。稍后,如果将数据附加到文件并且其大小增长到 1600 字节,则会分配另外两个簇,将整个文件存储在四个簇中。

如果连续簇不可用(磁盘上彼此相邻的簇),则后两个簇可能会写入同一磁盘上的其他位置或同一柱面或不同的柱面 — 文件系统发现两个可用扇区的地方.

以这种非连续方式存储的文件被认为是碎片化的。如果文件系统必须将驱动器磁头定向到几个不同的地址以查找要读取的文件中的所有数据,则碎片会降低系统性能。磁头前往多个地址的额外时间会导致在检索整个文件之前出现延迟。

可以更改集群大小以优化文件存储。较大的集群大小会降低碎片的可能性,但会增加集群具有未使用空间的可能性。使用大于一个扇区的集群可以减少碎片,并减少存储有关磁盘上已使用和未使用区域的信息所需的磁盘空间量。

当今个人计算机中使用的大多数磁盘都以恒定角速度旋转。与靠近磁盘中心的磁道相比,靠近磁盘外部的磁道填充数据的密度较低。因此,即使在远离磁盘中心的磁道上磁盘表面的速度更快,也可以在恒定的时间段内读取固定数量的数据。

现代磁盘保留一个盘片的一侧用于磁道定位信息,该信息在磁盘组装期间在工厂写入磁盘。

它不适用于操作系统。当磁头移动到磁盘上的另一个位置时,磁盘控制器使用此信息来微调磁头位置。当一侧包含轨道位置信息时,该一侧不能用于数据。因此,包含两个盘片的磁盘组件具有三个可用于数据的面。

</div>