有什么方法可以知道 SSD 上有多少个修剪块?

有什么方法可以知道 SSD 上有多少个修剪块?

我已将笔记本电脑的 HDD 更换为 480 GB SSD。

我在磁盘末尾留了 20 GB 的间隙用于超额配置(位置无关紧要,因为它是 SSD)。主分区有大量可用空间。
我使用 Windows 集成的修剪功能来修剪主分区。然后我希望这个SSD修剪得正确,但我没有证据。

有人知道如何找出 SSD 上有多少个修剪块/扇区/百分比/等等吗?

由于没有这方面的标准,我担心这需要与固件进行通信,而不同的 SSD 需要不同的方法。
如果这需要从 Linux 启动,这不是问题。

这是 SanDisk SDSSDA-480G 我已经使用过 SanDisk SSD Dashboard,但报告的值仅仅是 Windows 报告的值(这是在程序中写的)。

答案1

您搜索的数据仅位于 SSD 的私有部分内。目前没有标准方法来访问内部 SSD 控制器及其数据结构。因此,即使可能,它也将是特定于设备的。
我怀疑制造商手中存在此类程序,但从未见过。话虽如此,我从未搜索过它们。

使用关键的 MX300 SSD,我发现修剪块的读取速度比未修剪块更快。我在一个大的修剪区域(我过度配置)和一个空分区中进行了测试。
我还针对一个充满零的分区进行了测试,以检查高度压缩的数据是否会导致相同的结果:压缩数据稍慢,并且与修剪区域有区别。
我认为这对于小区域来说并不容易,因此很难知道实际数量,但很容易确保大区域没问题。
可能每个 SSD 的反应都不同。我只测试了其中一个。

在你的情况下,验证过度配置区域是否被修剪以及低数据分区是否被修剪可能没问题。
对于 Windows 操作的常规修剪,我认为你可以放心。

答案2

一些 SSD 用户报告说,这smartctl -A给他们带来了Wear_Leveling_Count……

其他人,比如我,似乎没有办法找出答案。我的驱动器型号报告为TOSHIBA THNSNK128GVN8。我有一些Unknown_SSD_Attribute,但它们似乎没有代表我丢弃的块的值。smartctl还说Not in smartctl database,我不知道这是否是一个因素。

答案3

你的问题没有什么意义,TRIM 命令从最基本的角度来说,您的操作系统会通知 SSD 中的微代码,某个块不再包含数据,并且可以将其擦除/用于磨损均衡等。

为了监测健康和磨损数据,可以使用供应商提供的工具(例如SanDisk SSD 仪表板或监控行业标准智能数据 由驱动器报告。

相关内容