很多人听说过固态硬盘不需要碎片整理,但是不知道为什么不需要碎片整理,如果需要会怎么样。今天以东芝tr200为例,试着看看固态硬盘碎片整理发生了什么。

为了展示SSD中数据读取速度的变化,首先在tr200 SSD中写入两个4gb的文件,通过不同的修改日期将其与文件台架文件读取速度测试软件的结果分开。首先,两个文件的读取速度应该完全相同:大约480mb/s。

然后用一个叫passmark fragger的软件对iobw.tst进行分片,这里的分片和机械硬盘一样,是文件系统级的概念,也就是说一个文件原本连续的部分,由于写入位置不同,被逐段分布在不同的逻辑地址。

碎片化的结果是,数据碎片被写入新的闪存位置,并且在整个片段中可以读出一次的数据在未来将需要读出几次。闪存的随机读取速度虽然比机械磁盘的磁头寻道速度快很多,但毕竟不比连续读取速度快。因此,碎片化后,iobw.tst文件的读取速度降至361mb/s..说明一个问题:即使SSD不需要碎片整理,大量文件碎片对SSD还是不利的。

[科技资讯] 终于明白为何固态硬盘不能整理碎片了:越整越慢

接下来我们用碎片整理器碎片整理,看看能否解决SSD的碎片问题。默认情况下,碎片整理程序会优化固态硬盘,而不是对其进行碎片整理,但我们可以强制其进行碎片整理:

但软件已经明确警告,碎片整理会降低SSD的寿命。这并不奇怪。碎片整理的过程是读出逻辑地址不一致的文件片段,然后重写为一致的逻辑地址。

然而,由于固态盘具有诸如ftl的中间转换层,逻辑地址和物理地址并不一一对应。虽然碎片整理程序在逻辑地址上将碎片化的文件碎片整理成一个连贯的序列,但它无法改变SSD闪存芯片中数据的具体分布。碎片整理耗费大量时间,产生大量写入,但仍然无法将文件读取速度恢复到原来的水平。

更可怕的是,即使按照软件的建议,用优化而不是整理来处理SSD,速度也无法恢复。本质上,优化操作是在没有文件存储的情况下,手动向空白地址发送trim指令,以促使固态盘主完成空白地址的垃圾收集。

但是,存储数据的位置不能被修剪:修剪的结果只有一个,即数据被清除空.所以在浪费了大量闪存写耐久性之后,还是没有办法完全恢复文件读取速度。

对磁盘进行碎片整理时,会产生新的写入,SSD主会选择一个新的位置写入数据(因为闪存无法覆盖写入),然后将旧位置标记为无效。每次碎片整理都会稍微提高一下闪存中文件碎片的程度:好心办坏事!

还记得机械硬盘时代我们是如何处理越来越慢的操作系统的吗?用ghost备份然后恢复,电脑运行速度会恢复很多。ghost的恢复过程其实就是把它们全部重写一次,但是这种方法不适合写有限的SSD。在正常使用固态硬盘的过程中,我们只需要不刻意对其进行碎片整理即可。

标题:[科技资讯] 终于明白为何固态硬盘不能整理碎片了:越整越慢

地址:http://www.heliu2.cn/xw/2733.html