ZOL论坛 > 硬件论坛 > 硬盘论坛 > 如何正确地给固态硬盘(SSD)分区
返回列表
签到
手机签到经验翻倍!
快来扫一扫!

如何正确地给固态硬盘(SSD)分区

345556浏览 / 48回复

yazhoufeiyin...

yazhoufeiying

0
精华
32
帖子

等  级:Lv.5
经  验:4322
  • Z金豆: 0

    千万礼品等你来兑哦~快点击这里兑换吧~

  • 城  市:安徽
  • 注  册:2008-11-22
  • 登  录:2017-04-25
发表于 2011-05-08 14:41:44
电梯直达 确定
楼主

如果您正在使用或者准备购买固态硬盘(SSD),肯定会其已经有了一定的了解。由于固态硬盘的结构和机械硬盘有本质的不同,固态硬盘要实现真正的性能发挥需要TRIM指令等一些特殊的手段。不过大多数人并不知道,或者并没有注意的是,除了某些较新的固态硬盘以外,分区以及格式化对于固态硬盘也有着极其重要的影响。如果您只是简单地用XP或者其他一些较老的工具对固态硬盘进行分区和格式化的话,得到的性能可能会只有几分之一!
注:Intel的固态硬盘在控制器层面上对这个问题进行了自动补偿,因此如果您使用的是Intel的固态硬盘的话,可以跳过本文了。

一. 问题的根源

问题的根源要从固态硬盘的组成部分,闪存说起。目前的绝大多数闪存的组织结构是划分成很多个512KB的块(Block),而每个块又由很多以4KB为单位的页(Page)组成。这就好像我国的行政组织是划分成众多个省,每个省又划分成很多个市一样。闪存的工作原理决定了它的擦除操作是以块(Block)为单位,而写入操作则是以页(Page)为最小单位。本站的固态硬盘技术专题可以让您更多地了解固态硬盘以及闪存。
另一方面,我们的操作系统在管理硬盘时也有一个最小分配单元。NTFS的默认的最小分配单元的大小恰好也是4KB,这很不错。不过问题在于,在进行分区时通常并不是从头开始的,而是有一个偏移值。比如使用Windows XP的分区工具的话,这个偏移值会让分区从一页的中部开始。也就是说,操作系统的最小分配单元和固态硬盘的页之间错位了。这样导致的结果就是,操作系统每次写一个4KB的数据,在实际运行时都有会两次写操作。理想的情况应该是,操作系统的每个最小分配单元都恰好和闪存的一个页对应起来,这样操作系统每次写一个4KB的数据,只需要实际的一次写操作就可以完成。两者之间的性能差距最多可能可以达到两倍!
如果分区时没有对齐,而且格式化时又没有使用4KB作为最小分配单元的话,性能损失可能更大。在国外著名网站Anandtech的测试中,对某顶级固态硬盘使用FAT进行格式话,而且分区时也没有对齐,结果4KB文件的写入性能极其糟糕。换成对齐分区以及4KB的最小分配单元以后,4KB文件的写入性能几乎达到了之前的10倍!

二. 如何正确地分区和格式化

这个问题的解决方法其实简单得很,那就是使用Windows7的分区工具来对您的固态硬盘进行分区,然后在格式化时使用4KB(4096B)作为分配单位大小即可。微软早已认识到固态硬盘需要操作系统的良好支持,所以在Windows7中加入了TRIM指令和分区对齐等针对固态硬盘的优化。使用固态硬盘的话,Windows7是目前最佳的操作系统选择。
但是如果没有Windows7怎么办呢?在XP和Vista下面,当然还是有办法的,而且并不算复杂。当然,这涉及到重新分区,所以如果您的固态硬盘里面已经有数据的话,会全部丢失,所以需要做好备份。另外,您还需要准备好一个装好系统的电脑。当然,这很简单,先把系统装在另一个硬盘即可,大多数使用固态硬盘的朋友应该都有不只一个硬盘吧?
这个操作可以通过一个免费的工具软件Diskpar.exe来完成,您可以通过微软的官方网站下载到这个软件
把固态硬盘连接到这个PC上,然后进入控制面板,在管理工具->计算机管理->磁盘管理中,找到您的固态硬盘当前是几号盘。比如当前您的电脑中有两块硬盘的话,固态硬盘可能是1号盘。记下这个号码。另外,把所有分区都删除,进行之前请备份好数据。
在开始->运行中,键入CMD。在跳出来的命令行窗口中,来到您放置diskpar.exe的文件夹。首先您可以通过diskpar来再次判断一下这个号码是不是正确的。键入diskpar -i 1。(注:这里面的1应根据您在前面看到的数值来输入。),回车后diskpar会输出类似下面的信息:
---- Drive 1 Geometry Infomation ----
Cylinders = 4139
TracksPerCylinder = 240
SectorsPerTrack = 63
BytesPerSector = 512
DiskSize = 32041820160 (Bytes) = 30557 (MB)
最后一行显示的是硬盘的大小,比如例子中的30557(MB)是个30G的硬盘。如果您的结果算出来和您的硬盘大小不同,请再次到控制面板中确认硬盘号。如果无法确认硬盘号的话,最好就此打住,不然您可能会擦除掉电脑中其他硬盘的数据。
键入diskpar -s 1,这时会有如下显示:
Set partition can only be done on a raw drive.
You can use Disk Manager to delete all existing partitions
Are you sure drive 1 is a raw device without any partition? (Y/N)
请确认您之前已经删除这个固态硬盘上的所有分区,按下Y。
---- Drive 1 Geometry Infomation ---- Cylinders = 4139
TracksPerCylinder = 240
SectorsPerTrack = 63
BytesPerSector = 512
DiskSize = 32041820160 (Bytes) = 30557 (MB)
We are going to set the new disk partition.
All data on this drive will be lost. continue (Y/N)?
Diskpar会显示出硬盘信息以后,警告说硬盘上所有数据将会丢失,再次按下Y。
Please specify starting offset (in sectors):
这里让您可以设置前面提到的偏移值,请输入128,然后回车。
Please specify partition length (in MB) (Max = 30557):
这里让您指定分区大小,假如您就分一个区的话,就直接输入硬盘的容量。
Done setting partition.
---- New Partition information ----
StatringOffset = 65536
PartitionLength = 32041304064
HiddenSectors = 128
PartitionNumber = 1
PartitionType = 7
You now should use Disk Manager to format this partition
到这里,分区就完成了!您只需要到前面提到的控制面板中的磁盘管理中对分区进行格式化就可以了。记得分配单位大小选择4096!

三. 验证

如果您手里的固态硬盘已经使用了一段时间,只是想知道是不是对齐了,或者您按照上述方法进行了操作,但是对操作过程不够放心,怕出什么错,有一个简便的方法让您验证您的固态硬盘的分区是不是对齐了。
在开始->运行中,键入msinfo32。回车后跳出一个系统信息的窗口,选择组件->存储->磁盘,这里会列出您的电脑中的所有硬盘的信息。找到固态硬盘,然后看它的分区起始偏移的值是不是4096的整数倍。如果不是的话,您的固态硬盘的性能还有很大的提升余地哦!


更多分区精彩内容====================

直接安装win7就可避开讨厌的100M分区
关于去掉安装版win7系统安装时出现的100M分区
c盘不够用怎么办,在线硬盘分区,无需格式化
新装机硬盘无法分区?
我用固态装系统时怎么多了个分区啊

硬盘分区合并重新分区的问题
双系统删除一个,并修改硬盘分区大小
新电脑怎么装WIN7系统  怎么分区                   
64G SSD建议分区使用吗?                   
硬盘无法分区,无法安装系统。

评分:+Z金豆 1  已有 1人参与评分

评分 收藏 +2

竹秀

竹秀


精华

帖子

等  级:Lv.7
经  验:15372
发表于 2011-05-08 18:22:09 1楼
基本上需要分区的SSD我都买不起

bluesea1000

bluesea1000


精华

帖子

等  级:Lv.2
经  验:650
发表于 2011-05-23 19:49:18 2楼
多谢楼主

e3gkyj

e3gkyj


精华

帖子

等  级:Lv.1
经  验:242
发表于 2011-05-24 15:08:57 3楼
只用WIN7 自带的分区工具分 就可以对齐了

yszq

yszq


精华

帖子

等  级:Lv.4
经  验:1571
发表于 2011-06-05 21:06:09 4楼
也是一种办法。

虹之翼

虹之翼


精华

帖子

等  级:Lv.9
经  验:51039
发表于 2011-06-06 12:14:07 5楼
基本上需要分区的SSD我都买不起+1

z393109730

z393109730


精华

帖子

等  级:Lv.1
经  验:0
发表于 2011-06-06 13:18:10 6楼
学习了 顶一个

tanyeah

tanyeah


精华

帖子

等  级:Lv.3
经  验:780
发表于 2011-06-26 00:14:26 7楼
好文
查了
对齐
谢谢

von_neu_mann

von_neu_mann


精华

帖子

等  级:Lv.1
经  验:10
发表于 2011-06-26 15:08:16 8楼
基本上需要分区的SSD我都买不起+1

dandanqu

dandanqu


精华

帖子

等  级:Lv.2
经  验:302
发表于 2011-12-21 10:58:44 9楼
感谢楼主指导!!!

zhupipip8p67

zhupipip8p67


精华

帖子

等  级:Lv.3
经  验:1050
发表于 2011-12-22 01:51:55 10楼


怎么我的不是1204K

vznc1717273

vznc1717273


精华

帖子

等  级:Lv.1
经  验:4
发表于 2011-12-25 17:27:18 11楼

谢谢楼主!

liunan12341

liunan12341


精华

帖子

等  级:Lv.2
经  验:287
发表于 2011-12-29 20:59:49 12楼
悄悄学习一下

chibaojiuhao

chibaojiuhao


精华

帖子

等  级:Lv.4
经  验:2542
发表于 2012-01-05 09:16:54 13楼
基本上需要分区的SSD我都买不起+1

lgg_wd_2

lgg_wd_2


精华

帖子

等  级:Lv.4
经  验:2088
发表于 2012-01-05 12:16:13 14楼
悄悄学习一下

coldrat

coldrat


精华

帖子

等  级:Lv.7
经  验:23298
发表于 2012-01-05 15:03:08 15楼
哦,原来4K对齐就是这么个意思

shy918

shy918


精华

帖子

等  级:Lv.3
经  验:974
发表于 2012-01-14 15:47:09 16楼
解决固态硬盘分区对齐的问题,楼主老师说:“使用Windows7的分区工具来对您的固态硬盘进行分区,然后在格式化时使用4KB(4096B)作为分配单位大小即可。”
我看了一下,win7格式化的选项中,系统文件为FAT32时,分配单元大小有1024字节、2048字节、4096字节、8192字节、16KB、32KB。系统文件为NTFS时,分配单元大小有512字节、1024字节、2048字节、4096字节、8192字节、16KB、32KB、64KB。
这些选项中唯独没有4KB(4096B)分配文件,请问如何操作才能找到4KB的分配文件?

chenyy2

chenyy2


精华

帖子

等  级:Lv.4
经  验:2652
发表于 2012-01-17 14:07:40 17楼
对 第15楼 shy918 说:
=========================

字节就是b,4096字节就是4K

fengrock

fengrock


精华

帖子

等  级:Lv.5
经  验:3449
发表于 2012-01-31 01:27:02 18楼
对 第10楼 zhupipip8p67 说:
=========================

第二个分区就是这样

jieyulin

jieyulin


精华

帖子

等  级:Lv.1
经  验:71
发表于 2012-02-04 23:01:18 19楼
学习了,不知道PE下是否可以DOS进行分区?求解

cd871127

cd871127


精华

帖子

等  级:Lv.1
经  验:73
发表于 2012-02-21 14:31:36 20楼
基本上需要分区的SSD我都买不起
点击查看更多精彩回复>>
去第 确定
支持键盘翻页 ( 左右 ) 
论坛精选大家都在看24小时热帖7天热帖大家都在问最新回答

针对ZOL论坛您有任何使用问题和建议 您可以 联系论坛管理员查看帮助  或  给我提意见

快捷回复 APP下载 返回列表