什么是Trim?如何使Trim+SSD更为高效
SSD是新生事物。因此,只有最新的系统才能针对其特点作出优化,使其发挥最大性能。Windows7/8在识别到SSD后,会关闭碎片整理,SuperFetch等一系列在机械硬盘上的动作,但很多人把这些机制误认为是Trim。
操作方法
- 01
什么是Trim? Trim又叫Disable Delete Notify。Trim启用的验证方法:用管理员权限打开,输入fsutil behavior QUERY DisableDeleteNotifyDisableDeleteNotify = 0 Trim启用DisableDeleteNotify = 1 Trim未启用原本在机械硬盘上,写入数据时,Windows会通知硬盘先将以前的擦除,再将新的数据写入到磁盘中。而在删除数据时,Windows只会在此处做个标记,说明这里应该是没有东西了,等到真正要写入数据时再来真正删除,并且做标记这个动作会保留在磁盘缓存中,等到磁盘空闲时再执行。这样一来,磁盘需要更多的时间来执行以上操作,速度当然会慢下来。而当Windows识别到SSD并确认SSD支持Trim后,在删除数据时,会不向硬盘通知删除指令,只使用Volume Bitmap来记住这里的数据已经删除。Volume Bitmap只是一个磁盘快照,其建立速度比直接读写硬盘去标记删除区域要快得多。这一步就已经省下一大笔时间了。然后再是写入数据的时候,由于NAND闪存保存数据是纯粹的数字形式,因此可以直接根据Volume Bitmap的情况,向快照中已删除的区块写入新的数据,而不用花时间去擦除原本的数据。以上就是Trim的原理以及真正作用。
- 02
为什么SSD在长时间使用后会出现性能下降? SSD在长期,或大量读写后,仍然会产生磁盘碎片。早期的SSD固件内并没有自动整理碎片机制,而Windows的磁盘整理对于SSD又并不适用,因此只能眼睁睁看着磁盘性能越来越差。但造成性能下降的原因还不止这一个,即使是支持自动整理碎片以及Trim机制的SSD,也会出现这样的情况。原因仍然跟上面的Trim原理密切相关。由于Volume Bitmap是快照,因此Windows必须清楚的知道,哪些区块中的数据是已经被删除掉了的。如果由于种种原因,Windows根本不知道磁盘的这些区块的情况,系统就只能按照对待机械硬盘的方式来操作SSD,只能向磁盘本身写标记,写入数据之前也会先擦除以前的数据,即使这里什么也没有
- 03
Trim的启用的前提 有支持Trim的SSD,也使用了Windows7,却也不一定就能开启Trim。由于Trim是微软的东西,所以初步只支持Microsoft编写的标准驱动。如果是一块支持Trim的单盘,就必须使用微软的标准磁盘驱动器驱动。而如果是阵列,就一定会用到第三方驱动程序。但比较奇怪的是,在安装Intel最新的Matrix Storage驱动之后,Trim机制居然正常工作了。五.怎样让Trim+SSD发挥出最大性能如果你只是购买一块支持Trim的SSD,再为它装上Windows7,也没有发挥出最大性能。原因很简单,因为新磁盘为空,Windows的Volume Bitmap根本没被建立。Windows只能按照对待机械硬盘的方式处理SSD。但有趣的事情发生了,你会发现,新的SSD得出的测试结果虽然不尽如人意,但在使用一段时间之后,速度竟然不降反升!下面就是我的Vertex 60G*2 Raid0在使用前后的速度对比:刚买来,装好系统之后的速度使用一段时间后的速度读取速度增加很明显,但写入速度却有所降低。原因?通过一段时间的使用后,一部分区块经过了读写操作,Volume Bitmap中建立了相关快照,速度自然快很多,而写入速度变慢是由于硬盘长期处于工作状态,碎片整理功能没有运行。在注销并闲置一段时间后,速度继续提升。
- 04
那么怎样才能让SSD从一开始就处于最佳工作状态? 人为向固态硬盘中写入大量数据,将SSD全部填满,然后删除所有填入的数据以及所有不需要的文件(比如临时文件等),当然,这个操作必须是在Windows7下面进行,并且Trim已经启用,在删除数据之后,再重启系统,闲置一段时间。这样一来,Windows7会立即建立整个磁盘的Volume Bitmap快照,SSD固件也自动整理碎片,全面提升速度。