我想要一个用于存储临时文件的分区(例如 Windows 上的 pagefile.sys 或 linux 交换分区),并且我希望这个分区比其他分区更快。
我们都知道,盘片外侧的转速比内侧的快。几乎所有的分区软件都使用条形图来显示分区,因此我不知道分区在硬盘盘片上的物理位置。因此我不知道哪个分区更快。
盘片上的分区的物理形状是像一个圆环,还是像一块饼(如图所示)本网站)?
多盘片的情况怎么样?例如:将具有 3 个盘片的 2TB HDD 划分为 3 个大小相同的分区。每个分区是否占用单个盘片,还是每个分区由每个盘片的多个环/饼组成?
答案1
拥有多个盘片的目的不仅是为了超越存储密度的限制,也是为了提高吞吐量。硬盘驱动器上的磁头在所有盘片上一起移动(即使在单盘片驱动器上,顶部和底部也会有两个磁头一起移动)。这意味着当磁头位于特定柱面(该术语指在多个侧面和盘片上对齐到相同位置的轨道)时,可以一个接一个地读取或写入来自多个盘片的信息,只需以电子方式从一个磁头切换到另一个磁头,而无需将磁头物理移动到另一条轨道(尽管通常需要对磁头位置进行微调)。
磁性硬盘的性能主要取决于三个因素:
- 旋转延迟(取决于旋转速度,如 5400rpm、7200rpm、10000rpm 等)
- 寻道时间(磁头移动到特定轨道的平均时间)
- 缓冲内存(缓冲越高越好)
考虑到上述因素,数据首先写入单个磁柱上的盘片,然后再移至下一个磁柱,这样可以最大限度地减少寻道时间的影响。将其扩展到分区,分配应该是环形的(覆盖磁柱上的多个磁柱),以最大限度地提高性能。这就是硬盘上的寻址机制 (LBA) 的工作原理。
你提到的网站中显示的饼形示意图不是如何分配。这样的分配将导致性能下降。
答案2
我想要一个用于存储临时文件的分区(例如 Windows 上的 pagefile.sys 或 linux 交换分区),并且我希望这个分区比其他分区更快。
这实际上不是考虑页面文件(或交换文件)的正确方法。操作系统使用这些文件来存储不经常访问的内容。您不应该频繁地访问页面文件,这样调整就没意义了。如果是这样,正确的答案是添加更多 RAM,而不是担心“哪个分区是最快的”。
顺便说一句,自从区域位记录出现以来,外圆筒的数据传输速度确实更快了。但实际数据传输几乎总是 I/O 操作中最短的部分,因此这种差异对总吞吐量影响不大。但同时,作为 ZBR 的副作用,任何给定外圆筒中的数据都比内圆筒中的数据多。因此,使用外圆筒将减少访问给定量数据所需的磁头移动量。这是一个更大的好处。