假设我们有一块带有 2 个盘片的硬盘,其特点如下:
旋转速率:10,000 RPM
平均扇区/磁道:1000
表面:4
扇区大小:512 字节
我在阅读《计算机系统:程序员的视角 2ed》时发现,它计算传输时间的方式好像只使用一个磁头来读取一个扇区。
如果是这样,为什么不使用 4 个磁头在 4 个表面上写入(读取)呢?因此,当我写入 2K 字节文件时,每个磁头只需等待盘片旋转一个扇区长度,而不是 4 个,从而将传输时间缩短 4 倍。
或者甚至重新设计扇区,使每个扇区位于一个柱面,但位于 4 个表面上的 4 个磁道上,分别位于相同的位置。每个 (512/4) 字节。因此,当硬盘需要读取 512 字节的扇区时,我们只需要磁盘旋转大约 1/4 的时间(与原始时间相比)。
这个想法看起来像 RAID 0。
答案1
要同时读取或写入所有磁头,需要复制所有相关电路 - 磁头放大器、比特流解码器,甚至微处理器和缓存。我不知道磁盘实际上是如何设计的,但在我看来这不太可能,尤其是考虑到行业中的价格压力。此外,即使是来自单个盘片的流也可能接近接口极限 - 寻道和旋转延迟会让您心力交瘁。
答案2
我认为它已经是这么运作的了:
气缸
每个盘片上的磁柱都具有相同的磁道号,横跨每个盘片表面上的所有磁道,这些磁道能够存储数据(无论磁道是否“坏”)。因此,它是一个三维结构。任何包含特定磁柱一部分的磁道都可以在致动器组件保持静止的情况下进行写入和读取,硬盘制造商提高驱动器访问速度的方法之一是增加可同时读取的盘片数量。
https://en.wikipedia.org/wiki/Cylinder-head-sector#Cylinders
编辑
维基百科的这句话并没有说明一切,电脑指南网明确地说:
在给定时间内只有一个磁头可以读取或写入硬盘。使用特殊电路来控制在给定时间内哪个磁头处于活动状态。
这是针对低端/中端硬盘的,但我偶然发现了一些旧讨论这里和这里他们指的是你所描述的技术“内部 RAID”而且我其实对今天的HDD技术了解不够。
答案3
在过去,当硬盘使用步进电机时,它们可以同时读取所有盘片。
但这种情况已经很久没有发生了。找到正确的轨道就像用音圈玩更热/更冷的捉迷藏一样。这不可能同时在所有盘片上完成。轨道太小,无法精确地位于所有盘片上的同一位置,因此它们必须单独寻道。