PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

固态硬盘傻傻问系列(第2期:固态硬盘该如何分区和对齐)

  [复制链接]
跳转到指定楼层
1#
James007ss 发表于 2012-2-21 21:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
点击数:91685|回复数:111
本帖最后由 James007ss 于 2012-4-27 23:26 编辑

这一期的固态硬盘傻傻问,我们来跟大家探讨下很多固态硬盘新用户都会产生的疑问:

常说SSD要注意分区对齐,那这个对齐究竟是什么?要怎么分区才能对齐呢?

在谈对齐以前,我们先说说大多用户都相对熟悉的分区,现在论坛不时能见到类似“我的SSD是拿来装系统的,还需要分区吗?”这样的提问求助,但这种问题,首先就犯了一个常识性的严重错误。

这个错误就是把分区和不分区的定义完全搞错了。在他们口中的不分区,实质是指只把硬盘划分为单独一个分区使用,而分区则是把硬盘划分为多个分区使用。因此,看到这里,大家应该都明白错误在什么地方了。不管你是单独划分一个分区,还是划分多个分区,这都需要进行分区操作。分区这两个字的意思是划分分区,但不知道何时起,却被人误解成了划分多个分区。目前我们使用的存储设备,不管是HDD、SSD或其它如U盘、闪存卡等等,不划分分区,在我们的操作系统上都是无法被使用来存放数据的,要存放数据,首先就必须进行分区。

那么现在回到上面那个问题,我们使用SSD,有没有需要划分多个分区呢?

在以前,我们为硬盘划分多个分区的原因,大致有以下四点:1.方便重装操作系统、2.旧式文件系统对分区尺寸的限制、3.控制磁盘碎片对硬盘性能产生的影响、4.用户对数据归类整理的需要。

第一个原因大家都清楚,若不为系统划分多个分区,重装时通常会导致要删除掉硬盘内的所有数据,若有必需保留的数据,便需要进行额外的备份操作。第二个原因是旧时的FAT32文件系统,对单个分区尺寸存在一定的限制,导致用户无法把1个大容量的硬盘单独划分为1个分区。第3个原因是HDD的操作原理导致它必定会产生磁盘碎片进而影响磁盘性能表现,而适当的划分分区来存放数据,能减低这种影响。最后的原因可说是大多数用户的习惯,除了1、2两个原因被强迫划分多个分区外,大家也都习惯以不同分区来归类存放的数据。

上面4个原因,目前WIN7系统相对于以前的系统来说,稳定性已提高极多,还原操作也比以前更方便效果更好,而且以目前所知,下一代的WIN8系统还会有更多的改善,只要我们合理使用系统不胡乱操作,重装系统的需要已经大大减少;现在大家都已习惯使用NTFS等较新式的文件系统,分区尺寸的限制对我们来说已算基本不存在;由于SSD的特性,我们更不需要担心磁盘碎片对性能的影响;因此必需划分多个分区的理由可说仅剩下最后的一个:我们对数据归类整理的需要。但这个需要我们也完全可以通过合理建立文件夹的方式来处理。

因此现在若大家购买使用小容量的SSD,主要用于安装系统和常用应用程序等,而数据都存放于大容量HDD的话,由于SSD容量不大,若划分多个分区,可能使用上不一定方便也缺少弹性(各分区的空间容易出现不足),因此一般不建议也基本没需要划分多个分区使用。

若购买使用大容量的SSD,大家也可以根据自己的需要划分多个分区或只划分单个分区,完全取决于你的习惯和喜好,并不需要有过多的疑虑。
(以上内容,部分资料由用户ggxuelei提供,特此致谢)

上面谈完了分区,那么现在我们就来谈谈对SSD很重要的对齐。

要理解对齐,我们首先要知道一些关于HDD和SSD的基础概念知识。

HDD的读写操作,一直是以扇区为单位,而每个扇区的尺寸长久以来都是512字节,直到近年才有部分大容量硬盘的扇区尺寸提高为4096字节(4KB),而电脑文件系统(FAT、NTFS等),一直都习惯以512字节的扇区单位来操作硬盘(这里主要指一般常见家用电脑,其它工作站、服务器等特殊专业应用的电脑磁盘系统分区设置不一定完全如此)。

SSD的NAND闪存颗粒,其读写操作则与HDD有所区别,简单来说就是读取和写入的最小单位是页(常见尺寸为4KB,实际视具体颗粒而定),但闪存颗粒不允许像普通HDD的磁盘那样覆盖写入,因此在有数据的地方要写入新数据,就需要先进行擦除操作,而擦除的最小单位是块(每个块都由很多个页组成,实际数量视具体颗粒而定)。

由于文件系统一直只是针对操作HDD而设计,并未考虑过SSD的特殊情况,而且目前也不可能单独为SSD而全新定制一种专用的文件系统,这么做也不现实。所以SSD厂商都在固件上把SSD模拟成HDD的形式让操作系统操作,这样就可在不用改变文件系统的情况下正常使用SSD。但这方法仍有1个缺点是无法靠固件弥补的,那就是文件系统对硬盘的分区设置。

传统的分区偏移尺寸一直是从磁盘的第63个扇区(63X512B=31.5KB)开始,因此第一个用户数据的前4KB,都肯定是存放在系统"逻辑扇区"的31.5KB~35.5KB之间,在SSD上,这样就会导致所有数据都横跨在2个页之间,从上面SSD的特性可以知道,这种情况必然导致SSD的性能受严重影响(特别是随机性能),因为每次的写入操作在SSD上都变成了读-擦-写操作。



如上图: 图中的SSD分区没有对齐,当读写正好在2个16KB边界时,便需要做2次读-改-写操作,那么这时候的操作所需时间就是原来的2倍。如果是写入4KB的数据,那么发生这种情况的概率就是25%(图中第一个4KB在边界,后面3个在16KB内,而第5个又到下个16KB边界了),性能为原本的80%。如果把写入数据的大小提升到32KB的话,发生的概率就是8/9了,随着请求容量的增大,差距就会缩小。所以对持续性能来说,分区不对齐并不会产生很大的影响。

那要怎么做才能让SSD分区对齐呢?

其实很简单,自VISTA之后的NTFS文件系统,分区偏移尺寸已经更改为从磁盘的第2048个扇区(2048X512B=1024KB,1024KB可以整除4KB)开始,这样也就不会发生分区不对齐的情况了。因此我们只要使用VISTA或WIN7的系统对SSD进行分区操作即可。


上图是SSD分区未对齐的测试成绩,大家可以看到,ASS在SSD容量对上一行的对齐数字中显示为:31K – BAD,这个BAD就代表分区未对齐。



上图是SSD分区对齐后的测试成绩,对齐数字中显示为:1024 – OK,显示为OK即代表分区已经对齐。

另外有些用户会对于这个分区数字有所疑问,例如最常见的:103424K - OK,这其实是因为用WIN7安装程序为SSD进行分区时,会自动划分1个100MB大小的引导启动分区,102400KB(100MB)+1024KB=103424KB;而另外在笔记本电脑上还有可能见到如:1229820K这类较为古怪的对齐数字,1229820-103424=1126400,1126400/1024=1100M,计算过后,除了100M的引导分区外,我们可以见到还包含了1100MB大小的空间,这是因为笔记本大多数会有厂商设置的还原隐藏分区,当用户使用迁移软件或克隆软件把笔记本原有系统迁移到SSD时,会连这个还原隐藏分区也一起迁移,所以便会出现这些较独特的对齐数字,但这个数字其实我们并不太需要理会,只要确定后面显示了绿色的OK字样,那便代表SSD肯定已经分区对齐。

2012/4/1补充一点:关于分区对齐,只要硬盘的首分区是对齐即可,有多个分区,首分区以外的分区是否对齐,并不重要。


固态硬盘傻傻问系列(第1期:如何识别SATA接口是否原生)

固态硬盘傻傻问系列(第3期:AS SSD测试成绩如何看 上)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

点评

对SSD完全小白的我支持一个!  发表于 2012-2-23 21:23
2#
James007ss  楼主| 发表于 2012-2-21 23:39 | 只看该作者
这么久没人沙发,那我自占了来补充一下



若身边没有使用VISTA或WIN7的电脑,也可以借助第3方分区软件来分区对齐,如上图,使用DISK GENIUS进行分区操作,注意起始扇区数为2048(同Win7格式化)即可,调整磁头为32,扇区为33,这样分区后就会对齐。

http://www.diskgenius.cn/
这里是DISK GENIUS官网,可免费下载。
3#
xihuanttt 发表于 2012-2-22 00:20 | 只看该作者
传统的分区偏移尺寸一直是从磁盘的第63个扇区(63X512B=31.5KB)开始     为什么必须从这里开始?
分区偏移  是不是因为之前的 记录了硬盘分区表之类的相关硬件文件?
4#
jeffxl 发表于 2012-2-22 01:07 | 只看该作者
本帖最后由 jeffxl 于 2012-2-22 01:08 编辑
xihuanttt 发表于 2012-2-22 00:20
传统的分区偏移尺寸一直是从磁盘的第63个扇区(63X512B=31.5KB)开始     为什么必须从这里开始?
分区偏移 ...


老硬盘一个磁道上分63个扇区,更老的还没63个扇区,物理磁头也就6-8个吧(3-4片盘片),再多硬盘里就装不下了。使用8位寻址方式,8位二进制数的最大值是256(0-255),用于表达磁头数;但实际只用255来表示磁头数。而扇区只有63个(1-63),用6位就可以表达了,还有二位就给柱面去用了,柱面数用10位来表达,达到1024(0-1023)。这也就是所谓的C(柱面)H(磁头)S(扇区) 3D参数。一般书写时按照CHS的次序来做,如0,0,1第一个0是0柱面,第二个0是的磁头(盘面)第三个1是1扇区。硬盘的实际物理磁头只有4个或6 个,现在有些硬盘只有一个磁头,仅用一面。如果有块硬盘正好符合上面的8位寻址方式的最大值,可以想象这个硬盘有128片盘片,每个盘面上有1024个磁道,每个磁道上有63个扇区。

0磁道作为早期操作系统的隐藏引导磁道(每磁道63扇区),现在0柱面0磁头1扇区为NT核心的MBR,0柱面1磁头1扇区是DBR(现在也称为OBR),剩下的62个扇区可以用来我们部署第三方引导记录信息,比如grub这些。

点评

原来如此,知识欠缺的太多了,看来还要长期恶补,跟不上你们的脚步,,,  发表于 2012-2-22 01:10
5#
joanslord 发表于 2012-2-22 11:46 | 只看该作者
简单来说,是不是买了SSD安装上win7以后,对于我这样的小白直接使用DISK GENIUS进行分区对齐就可以了呀?请指点…
6#
James007ss  楼主| 发表于 2012-2-22 12:27 | 只看该作者
joanslord 发表于 2012-2-22 11:46
简单来说,是不是买了SSD安装上win7以后,对于我这样的小白直接使用DISK GENIUS进行分区对齐就可以了呀?请 ...

如果已装好系统,但没对齐,可以看浴室签名,那有无损对齐软件,若是安装WIN7,用WIN7分区就能对齐,DG是给没WIN7和不用WIN7的朋友准备的。
7#
hgy9 发表于 2012-2-22 13:26 | 只看该作者
本帖最后由 hgy9 于 2012-2-22 15:40 编辑

Double o seven 码了这么多字,辛苦了,哈哈

偶来加点料:全新安装Win7时,如果不想要100MB的“系统保留”分区,可以用diskpart命令。

当安装程序运行到创建磁盘分区界面时,“Shift+F10”,启动命令窗

diskpart
list disk
select disk 0 ##看实际情况而异,如果只有一块盘,为0##
create partition primary size=30726 ##单位为M,系统里分区容量大小刚好为30G##  
active
exit

之后分其它区、建逻辑盘神马的,可以在图形界面完成,略。

TIPS:为了使新建的系统分区凑整,输入分区大小时,可以使用类似“硬盘整数分区计算工具”,如30G=30726M,40G=40963M,50G=51208M,且都为NTFS分区格式,这样建立的分区是凑整的,适用于像偶这样有凑整强迫症的。。。

8#
B_tequila 发表于 2012-2-22 15:45 | 只看该作者
蛮适合小白的。
我的SSD在XP下安装系统,就用Win7PE起动,然后在Win7PE内分区,接着装完XP后,用ASS看,SSD也是对齐的。
9#
滴水藏海 发表于 2012-3-7 15:17 | 只看该作者
好文,受益不少,特此感谢各位。

点评

欢迎新人,感谢支持,但请注意下版规。  发表于 2012-3-7 15:20
10#
suneyqsj 发表于 2012-3-8 23:49 | 只看该作者
已经安装好win7的SSD没有对齐,应该怎么弄?
11#
James007ss  楼主| 发表于 2012-3-8 23:54 | 只看该作者
suneyqsj 发表于 2012-3-8 23:49
已经安装好win7的SSD没有对齐,应该怎么弄?

http://115.com/file/aq3phddk

浴室提供的无损对齐软件,你可用它无损对齐。注意一般HDD最好别用。只用来对SSD做对齐操作就好。
12#
suneyqsj 发表于 2012-3-8 23:59 | 只看该作者
James007ss 发表于 2012-3-8 23:54
http://115.com/file/aq3phddk

浴室提供的无损对齐软件,你可用它无损对齐。注意一般HDD最好别用。只用 ...

Thanks。
一般64G的SSD,用Paragon.Alignment.Tool.3.0在win7下对齐4K,需要多长时间?
百度了下发现有些人在用这个的时候,时间太长,中途出问题后无法进入系统,SSD也需要格式化才能使用。。
13#
James007ss  楼主| 发表于 2012-3-9 00:03 | 只看该作者
suneyqsj 发表于 2012-3-8 23:59
Thanks。
一般64G的SSD,用Paragon.Alignment.Tool.3.0在win7下对齐4K,需要多长时间?
百度了下发现有些 ...

这个比较难说,一般得看你盘里的数据有多少,还有为防意外,当然仍建议做好重要数据的备份,和有需要重装的心理准备。通常正常安装原版WIN7,并且是用WIN7来建立分区的,不会出现不对齐的情况,我不清楚你不对齐的原因,但正常情况下用这个软件是没问题的。
14#
a295327207 发表于 2012-3-11 11:31 | 只看该作者
还是有些问题,希望能够帮忙解答。
我看了许久,还是没有能看明白,为什么SSD没有对齐的时候,读写时要进行两次的读-改-写操作,假如说我写入的数据是16,分别是(1、2、3、4、5。。。),现在SSD没有对齐,数据1在第一个4之外,是不是说写入的时候要先读这个没有对齐的16,然后再改,然后再进行写,读取的时候...,还是很搞不明白,望指点!
15#
James007ss  楼主| 发表于 2012-3-11 12:46 | 只看该作者
a295327207 发表于 2012-3-11 11:31
还是有些问题,希望能够帮忙解答。
我看了许久,还是没有能看明白,为什么SSD没有对齐的时候,读写时要进行 ...

不清楚那张16KB的图和它的说明你是不是没看明白.先注意,在没对齐的情况下,当写入4KB或以上尺寸的数据时,就一定会横跨2个页,这一点别忘了。我前面有说了,NAND颗粒最小写的单位就是页(页尺寸目前一般为4K),没对齐的话,4KB的数据会被分别写进2个页,后面一页放的数据不足4KB,自然肯定还有空闲的空间对吧?(假设只写入了1KB,那就是有3KB的空间是空闲的)在这种情况下,在这一页上再写入4KB数据,你说可是要对这一页进行:读(读取进缓存)-改(缓存内把老的1KB和新的3KB数据合并)-写(在那页内写入一共4KB合并后的新数据)操作?若是对齐,那每次写入4KB数据时就都能刚好写满一页,每次的操作就只是:写(直接写入4KB数据)操作了。
16#
a295327207 发表于 2012-3-11 13:59 | 只看该作者
James007ss 发表于 2012-3-11 12:46
不清楚那张16KB的图和它的说明你是不是没看明白.先注意,在没对齐的情况下,当写入4KB或以上尺寸的数据时 ...

非常感谢您的解答,对于这部分差不多明白了,不过我这里又有一个问题,可能还要麻烦您帮忙。
帖子里面有这样的一段话“当读写正好在2个16KB边界时,便需要做2次读-改-写操作,那么这时候的操作所需时间就是原来的2倍。如果是写入4KB的数据,那么发生这种情况的概率就是25%(图中第一个4KB在边界,后面3个在16KB内,而第5个又到下个16KB边界了),性能为原本的80%。”根据刚才的解答,如果没有对齐,写入数据的时候,在两个16KB的边界需要进行读-改-写操作,如果已经对齐了则只需要进行写的操作,如果是读写的话,应该也是这样,没有对齐的话,进行两次读-改-写操作,而对齐则只进行一次写,和一次读(不知道到这里理解是否正确)。如果是这样,对齐和不对齐则的时间差应该就不是两倍的关系了(两次读-改-写和一次写一次读的时间对比)。
17#
James007ss  楼主| 发表于 2012-3-11 16:19 | 只看该作者
a295327207 发表于 2012-3-11 13:59
非常感谢您的解答,对于这部分差不多明白了,不过我这里又有一个问题,可能还要麻烦您帮忙。
帖子里面有 ...

你说的,如果只是读取,那当然不用改和写的操作,但读1页成了读2页,这也会有影响对吧, 对齐就只用读完整的1页了(4K的话)。

而且那段话的例子说明了,不对齐是对随机的操作影响最大,持续的则是涉及的数据量越大,影响就越小,因为一直操作下去嘛。这个你能明白吗?
18#
a295327207 发表于 2012-3-11 16:42 | 只看该作者
James007ss 发表于 2012-3-11 16:19
你说的,如果只是读取,那当然不用改和写的操作,但读1页成了读2页,这也会有影响对吧, 对齐就 ...

大概懂了些,我再琢磨琢磨。如果有问题,再请教,谢谢啦!
19#
堕落のangel 发表于 2012-3-17 13:18 | 只看该作者
我想问下,假如我先使用原来机械硬盘之下的win7,再将新的ssd连接在电脑上,使用win7自带的分区,然后在装系统,这样是不是就对其了?
还有什么我看见你那软件上怎么1024k就算对其了呀?
什么软件能看出ssd的trim正常使用?
20#
James007ss  楼主| 发表于 2012-3-17 13:29 | 只看该作者
堕落のangel 发表于 2012-3-17 13:18
我想问下,假如我先使用原来机械硬盘之下的win7,再将新的ssd连接在电脑上,使用win7自带的分区,然后在装 ...

是,只要是用原版WIN7默认设置分区,那就一定会对齐,至于图上的对齐数字,我有说吧?其实不用在意,ASS显示OK即可。关于Trim,其实你可以去看看用户手册(置顶),只要确保3个方面的条件齐备,那是一定开启了的。除非你特别设置才可能会被关闭。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部