SSD的TRIM到底是什么?

固态硬盘,也就是我们常说的SSD,跟传统机械硬盘相比,具有读写速度快、防震抗摔性强、低功耗、无噪音等特点,因此不少用户在升级自己的电脑硬件时,也愿意选择固态硬盘。虽然硬盘的主要作用是存储数据,但是不同的硬盘在自身的性能上有一些细微的差别,其中,固态硬盘有一个非常特殊的功能——TRIM指令。
什么是TRIM指令?这个功能有什么作用?会对硬盘数据产生怎样的影响?我们将在今天的文章中,为您详细阐述这些问题。

一、 什么是TRIM指令
在为您解释TRIM的含义之前,我们先来看看电脑数据恢复的一些情况。
我们的电脑几乎每天都会处理大量数据,我想肯定很多人都对数据做出过删除、格式化的操作。当数据删除后,一些用户可能会感到后悔,或者发现把重要数据误删了,这个时候,我们可以利用迷你兔数据恢复软件,把误删除的电脑硬盘数据重新恢复出来。只要被删除的数据没有发生数据覆盖、损坏,那么迷你兔恢复成功的几率是非常高的,这一招,对机械硬盘非常管用,可以说是屡试不爽。
然而,到了固态硬盘里,您会发现,各种数据恢复软件全部不起作用,即便恢复出的数据能显示出文件名,恢复出的文件内容也全部是空白的。之所以数据恢复会出现这样的现象,就跟固态硬盘的TRIM指令有关了。

TRIM是为增强SSD主控垃圾回收效率而新引入的ATA指令。此指令相当于操作系统级别“磁盘碎片整理”程序的“预执行”。
在以往,操作系统在删除某个文件或格式化某个分区之后,数据并未真正删除,只是给这些数据打上“已删除”的标签,只有在执行操作系统级别的“磁盘碎片整理”时才会被真正清除。也就是说,被删除的数据还可以通过数据恢复软件,重新恢复。
而固态硬盘的TRIM指令干了什么呢?操作系统一旦删除某文件,固态硬盘收到TRIM指令后,就会立刻将这些数据进行垃圾回收,并在空闲时将对应的闪存进行擦除,这样数据就很难被恢复出来了。
这也是为什么您发现,固态硬盘上删除的数据不能通过软件恢复的原因。这并非软件不起作用,而是固态硬盘的TRIM指令造成的。

二、 TRIM指令可以关闭吗?
看完上一部分,想必会有用户提出这样的疑问:既然固态硬盘的TRIM功能会造成丢失数据难以恢复,那我想给自己留一条后路,能不能把TRIM功能关掉呢?
是的,固态硬盘的TRIM指令可以通过人为操作开启关闭。接下来,我们以windows10为例,为您展示整个操作过程。
第一步:在win10中搜索“命令”,右键单击“命令提示符”,选择“以管理员身份运行”。

第二步:输入“fsutil behavior query disabledeletenotify”命令,按回车键,查看电脑现在固态硬盘是否开启TRIM,返回0代表开启,返回1代表关闭,如下图所示:

第三步:我们可以看到现在固态硬盘开启TRIM,输入“fsutil behavior set disabledeletenotify 1”命令可以关闭。

第四步:按下回车键之后,我们可以看到返回值变成1了,代表关闭了固态硬盘TRIM。

第五步:如果要重新开启TRIM功能,输入“fsutil behavior set disabledeletenotify 0”命令,进行开启。

第六步:按回车键之后,可以看到返回值变成了0,代表开启了TRIM。

三、 补充
1、 开启TRIM功能需要固态硬盘本身的固件支持,和操作系统版本无关。
一些主要的固态硬盘主控芯片厂商已经提供了支持TRIM的固件(例如英特尔X25-MG2),不过也有厂商开发出不依赖操作系统的垃圾回收技术,通过回收不再使用的闪存区块加入负载平衡算法,防止固态硬盘在长期使用后速度下滑,并延长闪存使用寿命,过程完全在固态硬盘内部完成。

虽然开启TRIM功能后能够提升硬盘的效率,但是是否需要开启此功能,应根据您的个人情况来选择。所以在这里我们建议广大用户,平时应养成数据备份的良好习惯。如果在TRIM指令关闭的情况下丢失了电脑数据,那么请尽快用迷你兔数据恢复软件扫描恢复。
2、 win7和win8系统对TRIM功能支持有所不同。
win7检测到支持TRIM的固态硬盘时会自动开启该功能,并会在系统待机或者轻负载时自动向固态硬盘发送运行TRIM的指令,其缺点是不支持手动操作。因此可以看到一些固态硬盘在进行拷机测试后性能会下降,但是待机几分钟后性能会得到恢复。这其实就是系统自动在空闲时运行TRIM让SSD主控芯片对无用的数据进行擦除。
想比之下win8更人性化,把TRIM功能和日常的磁盘整理程序整合在一起,成为一个可以手动操作的系统组件。

原文地址:https://blog.51cto.com/14230984/2374180

时间: 2024-10-15 13:31:22

SSD的TRIM到底是什么?的相关文章

mac ox ssd 开启 trim

使用clover 补丁开启

Yosemite 升级后第三方SSD TRIM失败不能进入系统处理

no zuo no die, 这把手欠升级到了Yosemite, 然后发现原来在Mavericks里已经激活的TRIM在这里不行了, 又提示trim enable软件不适于此版本. 然后,悲剧就开始了, 随手找了一个老帖子,按照那个命令把内核文件改了, 也没管适不适用于Yosemite, 然后重启, 就进不去了... 一个禁止的标志横在那, 心哇凉啊, 我都还没做Mavericks的U盘安装盘,想降回去也不行啊. 拿着PC在那狂搜, 看来老外比我早, 有人解决了,遇到这个情况的朋友,输入以下救命

Ubuntu 针对 SSD 的优化方案

. . . . . 首先看下 LZ 的分区情况: >$ sudo fdisk -l Disk /dev/sda: 120.0 GB, 120034123776 bytes 255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I

Ubuntu 固态硬盘 4K对齐及启用 Trim,及其验证方法

因为之前一个移动硬盘因为坏道蔓延导致没办法继续使用,我略冲动地跑去买了一块 120GB 的三星840 固态硬盘回来.为了使用起来更方便,还去弄了个光驱位硬盘托架,把固态硬盘接在了光驱位与原本的笔记本硬盘一起工作.机械硬盘装 Win7 兼作备份盘,固态硬盘则安装了 Ubuntu. 在买固态硬盘前我是做了些功课的,了解到要使固态硬盘发挥出它应有的性能以及延长它的寿命,需要对它进行 4K 对齐并且开启 Trim. 先说说这个 4K 对齐.有人说用 GParted 直接分区会自动进行 4K 对齐,而更普

为SSD编程(4)——高级功能和内部并行

原文 http://codecapsule.com/2014/02/12/coding-for-ssds-part-4-advanced-functionalities-and-internal-parallelism/ 在这个部分,我将简要的介绍一些SSD的主要功能,如TRIM和预留空间.我同样会介绍SSD中不同等级的内部并行. 5. 高级功能 5.1 TRIM 让我们假设一个程序向SSD所有的逻辑块地址都写入文件,这个SSD当然会被装满.然后删除这些文件.文件系统会报告所有的地方都是空的,尽

RAID中可以做TRIM操作吗?

不知道大家有没有考虑过这样一个问题:在RAID中是否可以支持TRIM操作? 试想在SSD上建立RAID之后,应用软件(文件系统)直接运行在RAID软件之上,那么此时如何通过TRIM命令将SSD中的数据块unmap掉呢?看起来这好像不是一个问题,其实对于RAID而言这是一个比较大的问题.存储老吴可以带领大家从研发人员的角度一探RAID中TRIM所引入的问题,从中也可以一窥用户所应该注意的问题. 目前,RAID方面的开源软件是MD,很多用户对MD这套软件是非常热衷的.认为这套软件运行非常的稳定,性能

SSD上如何进行数据保护?

来自存储老吴的博客--存储之道 闪存技术的发展使得其成本下降.容量增加,越来越多的企业级用户也都在考虑如何将闪存SSD技术应用到自己的环境中去,从而解决性能.功耗.体积等存储常见问题.前几年闪存技术主要在互联网领域得到了大量应用,其主要原因在于互联网需要面临大量的访问IO压力,传统的磁盘存储系统无法提供高IOPS的能力,所以,只能借助闪存的高性能来解决互联网发展过程中的难题.所以,今天闪存在互联网领域已经得到大量应用,并成为其标配. 在闪存应用的过程中,PCIe接口在存储上的应用起到了巨大的成功

SSD -----TLC MLC SLC

SLC缓存什么鬼?TLC评测造假要持续多久 2016.5.5来源:中关村在线 TLC的廉价真的将SSD引入了全面普及的高速公路上,谈到TLC我们更多的理解是TLC的P/E(Program/Erase Count)是否经得起长时间的数据写入,但是这又是一个无解的案例,首先随着NAND Flash工艺的提升,NAND中存储数据的Cell(基本存储单元)栅极上的氧化层化学键更难控制,导致P/E次数随着工艺的提升而缩减,TLC NAND的P/E次数约为1000. 好在随着工艺和技术(3D NAND)的进

打开10.10.3上SSD的TRIM-黑苹果之路

对SSD没有研究,同事提出苹果对非官方的SSD不开启TRIM,上网度了一把,对TRIM不明觉厉. 一.TRIM是怎么回事:http://bbs.feng.com/read-htm-tid-1870887.html 二.打开非官方SSD的TRIM:http://bbs.feng.com/read-htm-tid-8997023.html 其方法很简单,依葫芦画瓢即可. sudo nvram boot-args="kext-dev-mode=1" 重启 sudo cp /System/Li