• 日常搜索
  • 百度一下
  • Google
  • 在线工具
  • 搜转载

如何在Mac SSD上检查和启用TRIM

您可能知道固态驱动器 (SSD) 与硬盘驱动器 (HDD) 存储信息的方式不同,并且您可能听说过一种叫做 TRIM 的东西可以保持它们的性能。

在本教程中,我不仅会向您展示如何为您的 SSD 启用 TRIM 支持,还会了解该术语的含义以及它如何适应固态存储的功能。

SSD 与 HDD

您可能听说过 SSD 具有使用寿命,并且您可以通过启用称为 TRIM 的功能来延长使用寿命。这基本上是正确的,我将向您展示如何检查和启用驱动器上的 TRIM 支持,但首先重要的是退后一步,了解咱们在说什么。

HDD 将数据编码到驱动器内旋转磁盘上的磁性涂层上。

另一方面,SSD 只是组装到驱动器外壳中的闪存单元网络,这意味着它没有移动部件。这就像将一系列非常高性能的 USB 密钥挤进一个盒子里。

如何在Mac SSD上检查和启用TRIM  第1张与基于磁盘的前辈不同,SSD 更像是一系列非常高性能的 USB 密钥,它们被挤压在一起。

SSD 的优势很明显:它们的速度呈指数级增长,完全静音,更耐用,并且不受碎片等问题的影响。

与任何新技术一样,由于价格高昂,它们直到最近才相当罕见。但是现在这些价格正在下降,SSD 成为大多数新计算机的标准配置,甚至更多的人正在用现代固态替代品替换他们的旧硬盘。

到期数据

这让我想到了房间里的大象,那就是长寿。由于闪存单元只能写入一定次数,固态驱动器在技术上的使用寿命是有限的,比它们的磁盘驱动器前辈更是如此。

但是,这通常被夸大了,因此,如果您对此感到恐慌,请考虑以下事项:即使大量使用,您的平均固态驱动器也需要十年以上的时间才能磨损。您更有可能首先更换计算机。

然而,有一些方法可以最大限度地延长使用寿命,这就是 TRIM 的用武之地。

旁注:虽然它经常全部大写,但 TRIM 实际上并不是任何东西的首字母缩略词!之所以这样写,是因为通过 ATA(高级技术附件)接口传输的用于将总线适配器连接到存储设备(如 SATA-Serial ATA)的命令指的是全部大写的命令。

要了解 TRIM 的实际作用,您首先需要了解一下固态驱动器实际存储信息的方式。

页面和块

您计算机上的任何文件都只是数据的集合,而固态驱动器会将这些数据写入一系列页面,每个页面都组装成多个块。块和页是 SSD 上数据存储的基本结构。

如何在Mac SSD上检查和启用TRIM  第2张
此简化视图显示了数据在 SSD 上的结构。

您计算机上的每个文件都有许多保留供其使用的这些块。问题在于 SSD 只能将新数据写入空白区域——它们不能像硬盘驱动器那样直接覆盖数据。

此外,SSD 无法删除单个数据页面。他们可以在页面级别写入新信息,但旧数据只能在块级别删除。

它的工作原理很像蚀刻草图。当 Etch-A-sketch 空白时,您可以随心所欲地涂鸦,并继续涂鸦直到屏幕填满。但到那时,如果你想画新的东西,你必须摇动 Etch-a-Sketch 并擦除整个屏幕——Etch-a-Sketch 就像你 SSD 上的一块数据。

这意味着当一个块中只有一些数据页变得过时时,它们不能被选择性地删除。相反,SSD 将所有好的页面移动到一个全新的块中,旧块被擦除,为未来的数据腾出空间。

把垃圾带出去

运行计算机意味着大量的数据写入和重写,因此 SSD 必须不断移动块以整合有效数据,并删除无效块以在需要时保留足够的可用空间。此过程称为垃圾收集。

当您删除计算机上的文件时,操作系统实际上并没有删除任何数据,它只是删除了前一个文件与其数据存储在驱动器上的位置之间的虚拟链接。这就是在 SSD 上基本删除和创建文件的方式。

阶段1

如何在Mac SSD上检查和启用TRIM  第3张

这就是您计算机上的四个文件对您和您的 SSD 的外观。

这种假设的情况从您的硬盘驱动器上的四个文件开始。

就您而言,它们可以是任何类型的文件,任何大小。从 SSD 的角度来看,每个文件只是在单个数据块中一起写入的一系列数据页。在大多数实际情况下,文件足够大以至于每个文件占用多个块,但这是一个简化的视图。

数据块底部的粉红色单元格是空的,这意味着可以将新数据写入这些页面。现在删除文件 C。

第二阶段

如何在Mac SSD上检查和启用TRIM  第4张
文件 C 被删除,但 SSD 不知道数据现在没有用了。

在我的mac上,文件 C 现在不见了——我再也看不到它了。SSD 上的数据保持不变。

文件 C 的数据仍然写入相同的页面,唯一不同的是操作系统对文件 C 数据的查找位置的引用已被删除。数据本身现在没有用了,但 SSD 仍然没有注意到并将其保留在那里。

在此过程的每个阶段,您都需要记住驱动器定期执行垃圾收集。每次垃圾收集周期运行时,SSD 都会获取整个数据块并将其重新写入驱动器的不同区域,以保持有效数据的整合和大块可用的空白空间。

换句话说,该块完全按原样复制并粘贴到驱动器的不同部分。然后它的原始位置被擦除,为新数据做好准备。

因为驱动器不知道文件 C 的数据现在无效,所以它也会复制所有那些无用的页面。现在我要创建一个新文件。

第三阶段

如何在Mac SSD上检查和启用TRIM  第5张

写入文件 X 会标记垃圾收集的旧文件 C 页面。

至此,我已经创建了文件 X。

现在文件 X 在操作系统中取代了文件 C,SSD 知道文件 C 的数据已失效,并将这些页面标记为垃圾收集。

同时,块中的两个空闲页已被用于写入文件 X 的数据。当下一个垃圾回收周期运行时,数据将照常复制到新块,但这次是文件 C 使用的页to live 不会被移动,文件 X 的数据将取而代之。

文件 C 的实际数据最终将被擦除,因为原始块位置被擦除干净。

如何在Mac SSD上检查和启用TRIM  第6张

最后,新数据得到了很好的整合。

介绍TRIM

如您所见,SSD 无法直接覆盖任何内容,这使得它们管理数据变得更加复杂。

在不知道旧文件数据何时失效的情况下,SSD 会花费大量的写入周期来运送无用的数据。这不仅会导致正常的文件操作变慢,还意味着对闪存单元进行更多的读取和写入,从而不必要地缩短它们的使用寿命。

提示:您可能已经注意到,即使您购买了一定容量的 SSD,您实际可用的空间也少得多。例如,典型的 256GB SSD 将只有大约 240GB 可供使用。

原因是 SSD 制造商为固件预留了一定百分比的驱动器空间,用作垃圾收集和其他维护任务的缓冲区。这被称为过度配置,它是确保驱动器的性能在其填满时不会显着下降的必要条件。

作为一般规则,SSD 上的可用空间越多,它的性能就越好。

默认情况下,SSD 无法知道文件何时变得无效,这就是 TRIM 的用武之地。

TRIM 是操作系统发送给 SSD 的命令,告诉它哪些数据已失效。使用此信息,SSD 可以更有效地执行垃圾收集,并减少硬件压力。

使用我之前的示例,这是相同文件管理方案的说明,除了这次启用了 TRIM。

阶段1

如何在Mac SSD上检查和启用TRIM  第7张
到目前为止,一切都很好。

一切开始时与之前完全相同,四个通用文件被写入 SSD 上数据块的页面。

第二阶段

如何在Mac SSD上检查和启用TRIM  第8张

启用 TRIM 后,操作系统会在文件 C 删除后立即通知 SSD,文件 C 的数据无效。

这一次,只要我删除文件 C,操作系统就会告诉 SSD 这些数据页已失效,因此它们会立即被标记为垃圾收集。

第三阶段

如何在Mac SSD上检查和启用TRIM  第9张
与其不必要地重写旧的文件 C 数据,不如及时清除文件 X 取而代之。

结果,当我将文件 X 写入驱动器时,垃圾收集已经清理了文件 C 曾经所在的插槽,并且我为 SSD 节省了一些不必要的写入和重写。

让它为你工作

如果这看起来是一个相对较小的改进,请记住,我的示例是对整个过程的简化,SSD 必须处理数以百万计的数据块来回移动——它加起来很快!

现在您已经了解了 TRIM 的作用以及它如何帮助延长固态硬盘的使用寿命,请确保它确实在您的机器上运行。

如果您购买的是出厂时安装了 SSD 的 Mac,则默认情况下会启用 TRIM,一切就绪,无需担心。

另一方面,如果您后来在系统中添加了第三方 SSD,则默认情况下将禁用 TRIM。如果您不确定,最好的办法是仔细检查

第 1 步:检查 TRIM 状态

要查看您的 SSD 是否启用了 TRIM,您需要访问一个名为 System Information 的工具(在旧版本的 OS X 上也称为 System Profiler)。

访问它的最简单方法是在按住键盘上的Option键的同时单击Apple菜单。

在菜单中找到 SATA 部分并找到要启用 TRIM 的硬盘。在描述中,您会看到一条线告诉您是否存在 TRIM 支持。

如何在Mac SSD上检查和启用TRIM  第10张
就我而言,它说是,因为我已经启用了 TRIM。

第 2 步:TRIM 启用程序实用程序

如果你说不,那么是时候打开safari并下载一个允许 TRIM 轻松打开和关闭的实用程序了。你会发现它在

http://www.groths.org/software/trimenabler/

免费版本就是您所需要的,因此请像安装任何其他应用程序一样下载并安装它。

如何在Mac SSD上检查和启用TRIM  第11张
下载并安装 TRIM Enabler 以便于激活。

第 3 步:打开它

安装后,打开它,只需将开关从Off切换到On。完成后,您需要重新启动计算机,然后在您的驱动器上启用 TRIM!

如何在Mac SSD上检查和启用TRIM  第12张
打开它,重新启动,你就完成了!

为确保它正常工作,请再次打开系统报告并验证 TRIM Support 行现在是否显示为Yes。

艰难的道路

如果您想知道,可以使用终端手动执行此操作,但命令有点吓人。本质上,您在此过程中所做的是修补低级系统文件以允许 TRIM 与您的 SSD 一起运行。

第 1 步:安全网

为了安全起见,请备份咱们将要修改的文件。将以下内容复制到新的终端窗口中,然后按Return(回车键)。

sudo cp /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext
/Contents/MacOS/IOAHCIBlockStorage /System/Library/Extensions/IOAHCIFamily.kext
/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage.original

系统将提示您输入管理密码,因此请输入并再次按回车键。请注意,终端不会在您输入密码时向您显示它正在注册您的按键,但它正在监听,所以不用担心。

第 2 步:修补文件

在发生意外时安全保护文件后,是时候使用以下命令以激活 TRIM 的方式修改内核扩展了。

sudo perl -pi -e 's|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00{1,20})[^\x00]{9}
(\x00{1,20}\x54)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg' 
/System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext
/Contents/MacOS/IOAHCIBlockStorage


重要提示:请注意,此代码适用于 OS X Mountain Lion 10.8.5 或更高版本或 OS X Mavericks。


步骤 3:刷新内核扩展缓存

要使更改生效,您应该手动刷新内核扩展缓存。

sudo touch /System/Library/Extensions/

完成后,退出终端并重新启动您的 Mac。当它休息艺术时,你应该准备好。

结论

如果您计划在系统中添加更多 SSD,则应保持安装 TRIM Enabler 实用程序,以便您可以轻松地在它们上激活 TRIM。否则,您可以随意删除它,因为TRIM不需要d 即可保持活动状态。

如今,TRIM 只是制造商用来保持 SSD 以最高效率运行的几种方法之一。可能没有必要继续使用,但它不会造成伤害,而且数据越优化,SSD 的性能就越好,因此几乎总是值得继续使用。

现在,您不仅了解固态硬盘的工作原理,还了解 TRIM 如何帮助它们以更长时间的最佳性能运行!


文章目录
  • SSD 与 HDD
  • 到期数据
  • 页面和块
  • 把垃圾带出去
    • 阶段1
    • 第二阶段
    • 第三阶段
  • 介绍TRIM
    • 阶段1
    • 第二阶段
    • 第三阶段
  • 让它为你工作
    • 第 1 步:检查 TRIM 状态
    • 第 2 步:TRIM 启用程序实用程序
    • 第 3 步:打开它
  • 艰难的道路
      • 第 1 步:安全网
      • 第 2 步:修补文件
      • 步骤 3:刷新内核扩展缓存
    • 结论