磁盘分区的4K对齐

为了方便阅读和理解,本文将采用问答式行文。所以可以称为:4K 对齐十问

1、什么是 4K 对齐?

早期的硬盘一个扇区的大小是 512 个字节,后来随之磁盘容量的不断增加和读写效率提升的要求,国际硬盘协会制定了全新标准,将每个扇区的大小调整为 4096 个字节,也就是 4KB,这种扇区又叫 4K 扇区。4K 对齐指的就是对磁盘分区时,让分区的起始扇区位于某一个 4K 扇区的起始位置。

2、为什么会有 4K 不对齐?

当硬盘扇区改成 4K 扇区之后,为了兼容以前的标准,为了方便技术人员的固有思维,为了保证靠扇区识别的旧的操作系统和应用软件不会出错,厂商把一个 4K 扇区虚拟成 8 个 512B 扇区,以便和以前的单位统一。这样一来,从这 8 个扇区中的第一个扇区开始的分区,就是 4K 对齐了的,从其他 7 个扇区开始的分区,就是 4K 没有对齐的。

3、什么是簇和簇大小?

windows 为了提高数据读写速度,对分区空间进行了按簇划分,对于大于 2GB 的 NTFS 格式的分区来说,windows 默认的簇大小是 4096 字节,也就是以 4KB 作为一个单位,所有的文件都是对簇独占的,比如说一个 10KB 的文件,放在簇大小为 4K 的分区里,就会占掉 3 个簇,所以实际占用空间为 12KB,如果一个文件夹里有 100 个 10KB 的文件,他们的实际大小是 1000KB,但是占用空间却是 1200KB。但是如果把这些文件放到簇大小为 8K 的分区里,每个 10KB 的文件就会占用 2 个簇,也就是 16KB,100 个文件实际大小仍是 1000KB,但占用空间却是 1600KB。

4、簇大小有什么影响?

通过上一问,我们已经看出,簇大小较小时空间利用率较高,较大时会浪费更多空间,那么为什么不把簇分的更小一些呢?这是因为 windows 在读取数据时是以簇为单位进行检索的,识别到空白的簇会直接跳过,如果簇大小为 8K,识别 1MB 就是 128 个簇,如果簇大小为 4K,同样识别 1MB 就是 256 个簇,如此一来就会在空白的簇上浪费掉更多的时间。也就是说,簇越小,空间利用率越高,但读取速度也就越慢;反之,簇越大,空间利用率就越低,但读取速度也就越快。NTFS 大分区的 windows 默认的簇大小一般是 4KB。

5、簇大小和 4K 对齐有什么关系?

windows 读写是按簇,磁盘读写则是按扇区,如果一个分区的起始扇区为一个 4K 扇区的第 2 个虚拟扇区,也就是 4K 没有对齐,那么对于簇大小为 4K 的分区,每一个簇都会被割裂在两个不同的 4K 扇区里,那么当 windows 操作一个完整的 4K 簇的文件时,磁头就要对两个 4K 扇区进行操作,当存在大量 4K 左右小文件的时候,操作速度就会较低。而正确的 4K 对齐就会提升读写速度,尤其是小文件的读写速度。

6、固态硬盘为什么要 4K 对齐?

上面我们说了机械硬盘的 4K 对齐原理,那么固态硬盘众所周知并无扇区的概念,为什么也要 4K 对齐呢?因为固态硬盘所使用的 NAND 颗粒的最小单位是页,页的大小一般也是 4KB,所以固态硬盘的页,等同于机械硬盘的扇区。而且由于闪存颗粒的特性所致,4K 对齐对其速度影响远大于机械硬盘,所以对于固态硬盘,我们更应该进行 4K 对齐。

7、XP 系统进行 4K 对齐速度会有提升吗?

XP 诞生的年代,尚未有 4K 扇区的概念,但是目前很多新硬盘包括固态硬盘也仍在使用 XP 系统,这类硬盘如果进行 4K 对齐后安装 XP 系统,速度也会有相应提升。

8、XP 进行 4K 对齐之后系统无法引导怎么办?

很多人都遇到过在对硬盘进行 4K 对齐后安装 XP 系统出现系统无法引导,表现为提示找不到启动设备、引导阶段显示一个短横线或小写字母 j 等等不同症状,一般出现在配置较老的电脑上。针对这种情况,本人建议,2010 年以前的硬盘可以不用进行 4K 对齐,那时候的硬盘基本上没有 4K 大扇区,对齐没有实际意义。2010 年以后的硬盘,如果安装在较早的主板(AM3/775 及以前的平台)上,有很大几率出现这种问题,可以尝试修复分区表和系统引导,如果仍不能奏效,可以退而求其次,将系统分区以外的其他分区进行 4K 对齐,而系统分区则只好放弃 4K 对齐。

9、U 盘、存储卡要不要进行 4K 对齐?

U 盘、存储卡和固态硬盘一样应用闪存颗粒的,所以除了早期的一些小页颗粒产品外,U 盘、存储卡进行 4K 对齐也会有不错的效果。

10、4K 对齐选多少合适?

4K 对齐是指对齐分区起始点到 4K 扇区,而一个 4K 扇区的大小是 8 个虚拟扇区(512B*8),所以,只要对齐到 8 个扇区的整倍数,都属于 4K 对齐,目前常见的对齐值有 8 扇区、2048 扇区、4096 扇区等,其中 8 扇区(4KB)是 4K 对齐的最小单位,2048 扇区(1MB)是 win7 系统自带的分区工具的默认值,而 win10 系统自带的分区工具默认的对齐值则是 4096 扇区(2MB)。

有人误认为 4K 对齐是指的对齐到 4K 个扇区,这是不对的,所以我们也没有必要非得选择 4096 扇区,最好按照 windows 默认的对齐值,即 win7 选 2048 扇区,win10 选 4096 扇区。似乎有人测试过,win7 系统下,对齐到 2048 扇区效果最好,本人并未实测,只是建议。至于 XP 系统,如果需要对齐的话,根据本人经验,可以尝试对齐到 2048 扇区或者 8 扇区。

© 版权声明
THE END
点赞7赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容