您可能会对使用臭名昭著的JMicron JMF602控制器的SSD感到不安。它既是SATA又是USB设备,这一事实是一个提示,因为JMF602是内置USB支持的少数控制器之一。
问题源于以下事实:SSD控制器无法过度写入闪存中的数据以及您的特定控制器如何处理它。由于SSD控制器无法覆盖闪存上的数据,因此必须先删除旧数据。但是闪存的另一个限制是,SSD控制器不能一次删除一页数据,而必须一次删除整个块(通常大约几兆字节)。为了避免这种情况,SSD控制器宁愿将新数据写入新块并将旧数据标记为无效。然后,它执行垃圾回收,这基本上是删除充满无效数据的块。
您遇到的特定问题是,当您没有新的空块要写入数据时,要将数据写入SSD。所有块均填充有有效和无效数据。然后,SSD控制器必须在使用中的块上进行垃圾收集。它所做的是将块的所有数据读入高速缓存。删除缓存中的无效数据。删除闪存中的整个数据块。然后将要写入的新数据以及来自缓存的数据写入到现在干净的块中。如果同时发生大量此类情况,则控制器将陷入困境,并且基本上会停止响应,直到可以清除积压的订单为止。
所有这些都发生在SSD本身内部,并且对OS完全隐藏。这就是为什么没有传统的故障排除技术可以找到它的原因。如果SSD上的所有块上都有数据,则只需执行很小的写操作就可以强制SSD进行整个读/删除/写操作,因此这就是为什么您看不到任何大写的原因。现代SSD没有相同的问题。他们内置了许多避免这种情况的技术,例如花哨的主动垃圾收集,RAM缓存和过度配置。它们可能会降低写入速度,但不足以导致系统死机。
坏消息是,除了升级到优质的SSD之外,您无法采取任何其他措施来修复它。这是SSD本身的设计缺陷。您可以尝试减少对SSD的写入量。那会使口吃变得更加罕见,但不能完全解决。
令人惊讶的部分是,在仅使用1年的PC中,您拥有这些基于JMF602的SSD之一。他们几年前停止制造和销售它们。