0. 硬盘扇区
当前电脑传统机械硬盘的每个扇区一般大小为 512 字节(512B);当使用某一文件系统将硬盘格式化时,文件系统会将硬盘扇区、磁道与柱面统计整理并定义一个簇为多少扇区方便快速存储。
现时 windows 中常见使用的 NTFS 文件系统,默认定义为 4096 字节大小为一个簇,但 NTFS 分区因为其引导区占用了一个磁道共 63 个扇区,真正的文件系统在 63 号扇区之后,那么依照计算得出前63个扇区大小为:
并按照默认簇大小得出 63 扇区为多少个簇:
即为每个簇都会跨越两个物理单元,占据第一个单元的组后512字节和第二个单元的前3584字节。这样文件系统在读写某个簇的时候,硬盘需要读写两个物理单元,这会降低读写速度,并缩短使用寿命。现时一般使用一些硬盘分区软件在主引导记录的63个扇区后作牺牲地空出数个扇区以对齐文件系统的4096B每簇,以避免过多的读写操作,提升读写速度、延长使用寿命。
1. 4K 对齐(4K Alignment)
在磁盘发展早期,每扇区为 512 字节(512B)比较适合当时硬盘的储存结构。但随着单盘容量的增加,储存密度的上升会明显降低磁头读取磁盘的信噪比,虽然可以用 ECC 校验保证数据可靠性,但消耗的空间会抵消储存密度上升带来的多余空间。所以提出了以 4KB (512B x 8 = 4KB)为一个扇区为主的改变。现时硬盘厂商新推出的硬盘,都将遵循先进格式化(4KB 扇区)的设计以对应新的储存结构和文件系统问题。
4K 对齐通常情况下是固态硬盘才有的概念和格式要求。
“4K对齐”就是符合“4K扇区”定义格式化过的硬盘,并且按照“4K 扇区”的规则写入数据。那么如果有“4K 对齐”一说必然就有“4K 对不齐”。“4K”对不齐是因为在 NTFS6.x 以前的规范中,数据的写入点正好会介于在两个 4K 扇区的之间,也就是说即使是写入最小量的数据,也会使用到两个 4K 扇区,显然这样对写入速度和读取速度都会造成很大的影响。为此对于“4K不对齐”的情况来说,一定要修改成“4K 对齐”才行,否则对于固态硬盘来说,不但会极大的降低数据写入和读取速度,还会造成固态硬盘不必要的写入次数。
2. 固态硬盘检测工具