本文作者:每日一学网站长

磁盘分区的4K对齐(普及帖)

每日一学网站长 23小时前 09:21:20 抢沙发

为了方便阅读和理解,本文将采用问答式行文。所以可以称为: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扇区。

文章版权及转载声明

作者:每日一学网站长本文地址:https://www.meiriyixue.cn/post/780.html发布于 23小时前 09:21:20
文章转载或复制请以超链接形式并注明出处每日一学网

分享

发表评论

快捷回复:

验证码

评论列表 (暂无评论,人围观)参与讨论

还没有评论,来说两句吧...