本帖最后由 鸿扬盛世 于 2012-3-29 09:37 编辑
什么是"4K对齐” 相关联的是一个叫做“高级格式化”的分区技术
首先先来了解一下什么是叫做“4K 对齐”。其实“4K对齐”相关联的是一个叫做“高级格式化”的分区技术。“高级格式化”是国际硬盘设备与材料协会为新型数据结构格式所采用的名称。这是主要鉴于目前的硬盘容量不断扩展,使得之前定义的每个扇区512字节不再是那么的合理,于是将每个扇区512字节改为每个扇区4096 个字节,也就是现在常说的“4K扇区”。
其实每扇区512个字节的定义起源于电脑发展的初期,因此在那时将硬盘容量切分成每块512个字节是平衡与文件管理和存储之间的。而现在主流硬盘容量已经攀升到1TB甚至更高,再用老标准去管理现超大容量的硬盘不但显得繁琐,而且降低效率,因此提升单个扇区的容量就势在必行了。
4K 不对齐,后果很严重
在了解了“4K扇区”这个定义后,就很容易理解什么是叫做“4K 对齐”了。所谓“4K对齐”就是符合“4K扇区”定义格式化过的硬盘,并且按照“4K 扇区”的规则写入数据。那么如果有“4K 对齐”一说必然就有“4K 对不齐”。为什么会有“4K”对不齐呢?这是因为在NTFS6.x 以前的规范中,数据的写入点正好会介于在两个4K 扇区的之间,也就是说即使是写入最小量的数据,也会使用到两个4K扇区,虽然这样对写入速度和读取速度都会造成很大的影响。为此对于“4K不对齐”的情况来说,一定要修改成“4K 对齐”才行,否则对于固态硬盘来说,不但会极大的降低数据写入和读取速度,还会造成固态硬盘不必要的写入次数。
这里如果是显示OK的话,那么4K就是对齐了;如果是显示BAD那么就表示4K没有对齐。
如何做到4K 对齐?
最后再来说说如何做到“4K 对齐”。如果在Windows7下,使用系统自带工具进行格式化,那么其格式化后的分区默认就会是“4K对齐”的分区,用户无需再做任何设置了。如果是依然在使用XP操作系统的话,那么要做到“4K对齐”就需要依赖于第三方工具了。比如说使用“DiskGenius”这款软件可以手动在“对齐到下列扇区的整数倍”扇区数选择8或者以上就可以实现“4K对齐”。
XP下选择“2048”就可以实现4K对齐了
当然就“4K对齐”而言,并不是所有用户都有必要纠结的。毕竟要将一块“4K不对齐”的硬盘变成“4K对齐”还是需要那么一点点技术和承担少许数据丢失风险的。因此建议如果是将硬盘作为仓库盘而非系统盘的话,“4K”是否对齐并不重要,同时对于普通机械硬盘用户来说,受限于4K的读取性能,“4K”是否对齐也并不是那么重要。而如果是固态硬盘用户的话,“4K”就一定要对齐了!
4K扇区对齐到底是和什么对齐。
磁盘分区后都要格式化成某个文件系统,如ntfs,fat32,ext4等等。Windows的文件系统储存文件时是按簇存储的,而ntfs的簇大小默认是4K,而4K扇区对齐就是指硬盘的4K扇区与的4K簇一一对应。
如图:4K簇,分配单元大小:4096字节。
为什么会出现不对齐的情况?
因为之前的系统或者分区软件并没有考虑这个情况,都是以512字节扇区磁盘的第64个扇区为第一个分区的起始位置,而这个位置在4K扇区的磁盘上表现的正好是第八个扇区的最后位置,就会造成如图的情况:
如果通过系统在4号位置存储数据的话,则需要修改1和2号位置,也就是存一个数据需要做原来的二倍工作。如果在5号位置存储数据,而同时2号位置前半段存储了数据,则需要先把数据搬出来,凑够4K才能存储在2号位置,也就是这个过程发生了“读取-修改-写入”三个过程,明显费时又费事。在这个过程下读取连续的簇是不受影响的,而当数据存储不连续的时候也受一定的影响。
|