鸿扬盛世 发表于 2012-3-28 23:39:13

技术普及 什么是4K对齐

本帖最后由 鸿扬盛世 于 2012-3-29 09:37 编辑

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

嫣然玲珑笑 发表于 2012-3-28 23:42:00

{:2_32:}对齐了,不过大哥你图挂了

tudousi 发表于 2012-3-29 06:57:42

图挂了……又学习了!!顶

xujingyu918 发表于 2012-3-29 08:11:02

我也来学习

yangzaga 发表于 2012-3-29 10:07:44

呵呵,路过学习下

oyyp 发表于 2012-3-29 15:36:24

支持技术贴。。。

jjh11454 发表于 2012-3-29 16:04:49

牛帖必顶。。。。。。。。。。。。。。。。

xiangbi 发表于 2012-3-29 16:56:42

索迪斯奈~~~

wpue_11 发表于 2012-3-30 08:25:55

学习了,可惜,俺没有SSD

zqian 发表于 2012-4-3 18:02:28

装上msata
用机械硬盘上原系统win7分2区
然后u盘启动格掉机械硬盘,用win7盘直接装系统到msata的第一分区,
这样顺便还能不用分出前面那个100M的win7驱动分区。
这样操作可否,是否对齐了?
页: [1] 2
查看完整版本: 技术普及 什么是4K对齐