U盘之家 > 固态硬盘 > 技术分享 > SSD固态硬盘:垃圾回收和TRIM指令详解(2)

SSD固态硬盘:垃圾回收和TRIM指令详解(2)

2012-07-15 02:53来源:小熊在线编辑:冰幻 浏览量:
  • U盘问题,请到问答平台:http://www.upan.cc/
  •   核心提示:
    在表二的第一列中,固态硬盘用户写入了四个新的文件。操作系统在逻辑表中能够识别这四个新文件。固态硬盘既有逻辑表也有物理位置,因此它也 能够

      

    SSD固态硬盘:垃圾回收和TRIM指令详解-U盘之家

        在表二的第一列中,固态硬盘用户写入了四个新的文件。操作系统在逻辑表中能够识别这四个新文件。固态硬盘既有逻辑表也有物理位置,因此它也 能够识别这些新文件。在物理模式下,固态硬盘还能够识别预留空间(OP),这部分预留空间并没有计算在固态硬盘的标示的容量之内。在第二列中,用户删除了 文件C,但是由于系统不支持TRIM指令,因此固态硬盘并不知道文件C已经被删除了。如果此时,固态硬盘要执行垃圾回收的话,那么它也会移动文件C,因为 硬盘并不知道这个数据已经被删除了。在第三列中,操作系统让固态硬盘在原来存储文件C的位置写入新的文件E。固态硬盘把新文件写入到空余的空间内,同时把 文件C的位置标记为“无用”,随后进行的垃圾回收就可以清理了无用文件了。 www.upan.cc

    SSD固态硬盘:垃圾回收和TRIM指令详解-U盘之家

        表三:支持TRIM指令的垃圾回收过程。

    优盘之家

        支持TRIM的系统,在用户写入数据时并没有不同。但是当用户删除文件C的时候,因为系统支持了TRIM指令,固态硬盘立刻就把数据标记为 “无用”,从而为接下来的垃圾回收做准备。原来存放文件C的空间,固态硬盘把其看做是可用空间。“动态预留空间”意味着固态硬盘在执行垃圾回收的过程中拥 有更多的可用空间,从而整体提高性能。

        在第三列中,用户写入新的文件E。尽管现在固态硬盘与不支持TRIM的硬盘闲置空间相同。区别就在于:TRIM支持的固态硬盘知道哪些数据是无用的,在垃圾回收的时候,这些无用数据可以被看成是空闲空间,从而避免把无用数据移动到其他块中。 优盘之家

        这将会产生三大优点: 优盘之家

        1.降低写入放大。更少的数据被重写,更多的空闲空间为垃圾回收所利用。更多的空间可用也意味着不需要重新写入更多的数据。 优盘之家

        2.更高的吞吐量。支持了TRIM指令,就意味着在垃圾回收阶段需要移动的数据表少,固态硬盘性能就会提升。固态硬盘吞吐量的瓶颈在于闪 存。固态硬盘的最快写入速度就是闪存所能支持的最快写入速度。在执行垃圾回收过程中,由于涉及到数据的移动和写入,固态硬盘不得不要停止一些主控的数据传 输。这也是为什么固态硬盘知道无用数据的优点所在,至少在垃圾回收阶段,它这些数据不在需要移动,从而节省带宽。 优盘之家

        3.改善耐用性。由于不在需要重新写入无用数据,这样可以减少固态硬盘的实际写入次数。 www.upan.cc

        注意:目前TRIM并不能正常工作在RAID环境中。这是因为目前RAID驱动一般都不支持TRIM。当更多的RAID厂商开始支持RAID TRIM,我们期待TRIM无乱在RAID还是正常环境下都能够为用户带来益处。

    优盘之家

    DuraWrite和TRIM指令

        DuraWrite,使用在LSI SandForce主控中。无论系统支持TRIM与否,这项技术都能够产生类似TRIM的好处。如果系统支持TRIM,那么DuraWrite可以创建更多的闲置空间。请看表四: U盘之家

    SSD固态硬盘:垃圾回收和TRIM指令详解-U盘之家

        表四:DuraWrite vs 没采用DuraWrite的固态硬盘主控 www.upan.cc

        在一款没有采用DuraWrite技术的普通固态硬盘中,等待被删除的数据所占空间与闲置空间所占空间相同。因此留给垃圾回收的空间就变少 了。所有固态硬盘要想有效的使用可用空间就要花费更多的时间来进行垃圾回收操作。在支持TRIM的传统固态硬盘中,(第一行,右边)等待被删除数据所占用 的空间也可以变成可用空间,因此可以有更多的空间来执行垃圾回收。空间越多,固态硬盘写入速度就越快。因此TRIM对固态硬盘的整体性能影响很大。

    U盘之家

        采用了DuraWrite技术的固态硬盘(第二行,左边),首先固态硬盘写入的实际数据就比一般固态硬盘更少,因此能够提供更多的空间来执 行垃圾回收。实际上采用了DuraWrite技术的固态硬盘即使在没有TRIM指令支持的环境下,也能够与一般固态硬盘在TRIM环境下所拥有的空闲空间 相媲美。而采用了TRIM支持以及 DuraWrite技术(第二行,右边),留给硬盘垃圾回收的空间就更多了。当然,光是拥有足够的闲置空间并不能保证固态硬盘的性能提升有多巨大,因为还 存在着其他瓶颈。 www.upan.cc

        在存储界,诸如资料重复删除技术,数据压缩,数据差分等技术被广泛使用。DuraWrite技术把这些技术以及类似的技术整合在一起,从而 减少闪存的写入次数。因此采用DuraWrite技术的固态硬盘即使再不支持TRIM的系统中的表现与一般没采用这项技术的硬盘在TRIM系统下的表现相 差无几。当然也可以在RAID环境下使用DuraWrite技术,即使RAID厂商不支持TRIM,用户也能够获得类似的效果。 www.upan.cc

    空闲时间 vs 实时垃圾回收 优盘之家

        最后的问题是什么时候执行垃圾回收?在业界,这个问题也被争论不休。到底是在空闲时间还是实时执行垃圾回收呢? www.upan.cc

        似乎执行空闲时间垃圾回收是个不错的主意,因为系统对固态硬盘没有额外的数据请求。在固态硬盘不忙的时候让其“整理”家务似乎更合情合理。 这样当操作系统准备写入新的文件或者像改变文件的时候,固态硬盘早已优化了块。但是,空闲时间垃圾回收也同样存在两个问题。首先,采用空闲垃圾回收有可能 把固态硬盘中所有目前合理的数据重新定位,但是事实上,这些数据并不真的都是有用的数据,例如在临时文件,以及移动很快就要删除的文件。如果固态硬盘的块 中包含无用的数据,通过空闲垃圾回收,固态硬盘将会重新写入很多近期并不需要的数据。最直接的后果就是导致无必要的硬盘磨损,从而降低耐用性。

        空闲时间垃圾回收主要被用在写入速度很低的固态硬盘中,因为这样就避免在前台必须执行的垃圾回收,从而让固态硬盘在写入的时候能够实现更好的写入速度。直到从系统发送来的数据量达到了固态硬盘垃圾回收后的闲置空间后,固态硬盘才被迫执行实时垃圾回收。 优盘之家

        而实时垃圾回收,或叫做前台垃圾回收,则可以只有在闲置空间立刻需要的时候才开始执行。因此这种方法不会对马上就没用或者被删除的数据进行 垃圾回收,从而降低了对闪存的重复写入次数。同时这也需要固态硬盘有很高的读写速度。LSI SandForce主控芯片采用结构能够确保固态硬盘能够尽可能快的执行实时垃圾回收。 优盘之家

        无论是实时还是闲置时间进行垃圾回收,对于消费级固态硬盘的影响都不大。因为在消费级领域,固态硬盘的闲置时间总是很多,产品耐用性的要求也没有达到企业级的标准。因此在企业级应用中,垃圾回收方式的优劣才能够更好的凸现出来。 www.upan.cc

        LSI SandForce主控芯片使用了优化的垃圾回收技术,与其他主控相比,SF主控在实时垃圾回收方面做的更出色。另外SF采用DuraWrite技术,整 体数据写入量本来就比其他主控写入的少,因此在垃圾回收的过程中需要重新写入的数据也就相应的变少,固态硬盘整体性能表现更为优异。 优盘之家

        综上所述,对于所有固态硬盘而言,垃圾回收是一项十分必须的技术。究竟是选用实时还是空闲时垃圾回收,以及是否采用TRIM指令支持都会影 响到硬盘的性能,也会影响到写入放大以及耐用性。这些因素是厂商在设计固态硬盘时候或者消费者在选购产品时候都需要考虑的认真考虑的问题。 U盘之家

    SSD固态硬盘:垃圾回收和TRIM指令详解(:http://www.upan.cc/ssd/share/2328.html

     

    • 共2页:
    • 上一页
    • 1
    • 2
    • 下一页
    • (提示:试试键盘"← →"可以实现快速翻页)
    tags: trim  
    (U)优盘之家,是一个集U盘量产工具U盘启动盘制作工具内存卡修复工具U盘检测工具于一体的专业指导性网站,请牢记我们的域名:www.upan.cc
    评论(请自觉遵守互联网相关政策法规,管理可以直接删除恶意评论、广告或违禁词语):
    表情:
     
    网友评论
    回顶部
    关于我们 | 免责声明 | 广告服务 | 联系我们 | 合作联系 | 网站地图 | 友情链接 | 关于淘宝直营店
    copyright © 2002-2005 upan.cc. all rights reserved .
    蜀ICP备09012900号