首页>新闻资讯>技术展示

SSD技术干货分享:Trim指令对你的SSD有多重要

来源:时间:2017-03-22浏览:1047

                            


不少刚入手SSD的用户会注意到到过产品支持“Trim”等参数介绍,但“Trim”究竟是什么鬼,究竟他能对我们的SSD起到什么作用?


在机械硬盘时代,删除数据并非真正意义上的“清除”。因为机械硬盘是通过覆盖的形式对数据进行替换,所以系统就告诉硬盘说:这地盘以后是我的,你小子不要动,下次大爷想要写入数据的时候再来宠幸你(这也是机械硬盘能够数据恢复的原理)。


但这套霸道总裁爱上我的方法在SSD上并不能管用,因为SSD的数据并不能覆盖,只能擦除再写入。试想如果我们用对待机械硬盘的方法,会使SSD无法在最适当的时机做出最好的优化,不仅拖慢了速度,并由于频繁大量的读写,而损耗了固态硬盘的寿命。


Trim的工作原理 


而当开启Trim时,操作系统会送命令给SSD,让他知道这个数据所在的这个“page”可以直接被写入,等于把控制权从操作系统变为了SSD主控制器固件。SSD一样会复制整个包含删除数据的块到缓存,清空块并写入有效数据的页回去,区别是这样等于把这个延迟时间从覆写数据的那个时间提前到了删除数据的时候(这个时候你对速度不敏感,如果你删除了很大很大的数据,可以去观察硬盘灯在你删除之后几秒内狂闪),自然就会觉得SSD的速度终于体现了,因为你写入的时候有可用的空块。



                                                                    TRIM 工作示意图



是不是看的有点晕,简单的说就是系统告诉SSD这块地方的东西删除了,然后SSD马上就把这块地方删除清空,等待下一次写入,并释放SSD的空间(这也是为什么SSD删除东西后不能恢复的原因)。

Trim的三要素 


1.系统要在Win7以上

2.SSD要支持Trim指令,目前主流的SSD都是支持Trim,但不排除有些山寨产品不支持

3.驱动要支持,这方面只要打开AHCI就没问题了,因为Trim指令来源其实是ATA命令


 如何查看是否开启Trim 


一般入手新SSD,在Win7以上的系统,系统只要识别到是SSD,就会自动开启Trim。

 

查看的方法就是以管理员身份运行CMD,输入fsutil behavior query disabledeletenotify 如果显示结果为DisableDeleteNotify=0,说明已启用,如果为1说明未启用。

                                                                        TRIM 已打开



如何开启Trim 


和上一步一样,打开以管理员身份运行CMD,只需输入fsutil behavior set disabledeletenotify 0即可。





总结 


Trim指令看起来非常有用,非常智能的管理SSD,但Trim仅仅是一条主控命令,并非是Trim加速了固态硬盘的工作效率亦或是Trim延长了使用寿命,而是Trim作为ATA命令,下达旨意,让固态主控中的固件功能根据命令更加科学的进行垃圾文件回收等相关工作。





更多