为什么我的Windows 7 PC / SSD驱动器保持冻结?


10

我有一台大约1年的旧PC,带有一个主SSD硬盘。我经常注意到PC会冻结30秒到几分钟,并在此期间显示“旋转蓝轮”鼠标图标。然后释放并恢复正常。

在此期间查看资源监视器时,我注意到在此期间磁盘活动始终稳定地处于“ 100%最高活动时间”。但是对我来说,磁盘活动的实际数量似乎并不高(每秒<1Mb)。内存和CPU永远不会受到压力。

通常,防病毒软件(Kaspersky防病毒11.0.0.232)是磁盘活动的最活跃用户,但这在我看来并不稀奇。在这些期间,我通常不会对PC施加太大压力,只是进行少量网络冲浪等。

我的猜测是驱动器有问题,但是我不确定下一步该做什么(除了购买新驱动器之外)。

有任何想法吗?

谢谢,


什么型号的SSD?
Alpha先生

一个“集成SATAII和USB SSD ATA设备”,容量121793 MB。根据“更新驱动程序”按钮,驱动程序是最新的。
罗布·莱文

我对Corsair Force LE SSD 1TB有相同的问题
ColacX '16

对我来说,事实证明我不小心将SSD安装到了较旧的SATA端口中。一旦我切换到更现代的端口,问题就消失了,或者至少很少发生。
ColacX

Answers:


17

您可能会对使用臭名昭著的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之一。他们几年前停止制造和销售它们。


谢谢,这听起来像是一个很合理的解释。这台机器实际上已经使用了1.5年(时间过得真快!),所以也许我买了一批坏的SSD。我很高兴升级到一个好的SSD,因为这个问题真烦人。
罗布·莱文

另外,我认为随着我逐渐填补驱动器,问题变得更加严重,这也符合您的解释
rob levin

您基本上是在说JMicron驱动器不支持该TRIM命令吗?因为您描述的所有内容(填充了空块,然后必须执行垃圾回收来合并块)听起来都像TRIM命令一样-我理解并且很满意,我知道OP的问题。如果您要指的是其他内容,我个人想进一步了解它,以及它与TRIM解决的问题之间的关系。
伊恩·博伊德

@Ian Boyd是的,我指的是TRIM应该解决的问题。这些基于JMicron的驱动器不支持TRIM。尽管说TRIM解决了这个问题,但有点过分简化了。TRIM仅为垃圾收集提供更多信息,从而使其能够更高效地运行。完全避免该问题仍然需要足够有效的垃圾回收例程。
Alpha先生

只是不得不说出惊人的答案。我不太懂计算机,但对它的理解很好。优秀的!
user1125620

1

鼠标还会停止移动吗?如果鼠标也没有响应,则说明内核模式下的某些事情正在占用CPU。否则,该过程只是行为不当。

接下来的事情是运行Resource Monitor,并查看在分页期间是否发生了问题。检查分页操作的响应时间:

在此处输入图片说明

接下来,我们必须知道暂停是在影响所有应用程序,还是仅影响资源管理器。如果只是浏览器,那么您可能具有外壳扩展程序(例如WinRar,7Zip,RapidShare)或其他同样不好的功能,干扰了资源管理器。它也可以是映射的驱动器,或者是网络资源的快捷方式,并且当Explorer尝试更新图标,修改日期或大小等时,网络资源不再响应。


鼠标仍将移动。该问题确实影响了所有应用程序。有些将继续正常工作,而另一些将冻结-这取决于(我认为)冻结期间应用程序是否需要访问SSD驱动器。
罗布·莱文

抱歉,我没有足够的权限来发布屏幕截图,但它并不花时间进行分页,它是App进程(在我的最新示例中为Photoshop)和系统活动(NTFS卷日志,NTFS主文件表)的混合。在流程中没有什么比众不同的了。总I / O为148kB / sec,最高活动时间为100%。
罗布·莱文

哦,如果问题是驱动器必须执行垃圾回收才能满足其他写入操作,则写入的“响应时间”应该很高。(你可以看到的响应时间的截图上0-1ms之间我的SSD驱动器服用,与正常IO优先级的响应时间上旋转C:驱动器为几十毫秒。
伊恩·博伊德

1

卡巴斯基是这里的关键词。让您的扫描完成,然后返回并玩游戏。


0

尝试使用此工具查看硬盘驱动器是否出现故障:

  适用于NT / 2000 / XP的SMART和Simple
  http://www.beyondlogic.org/consulting/smart/smart.htm

它会提供有关错误的统计信息以及您的硬盘驱动器会跟踪的信息。


谢谢-我尝试过此操作,但在Windows 7上不起作用。它看起来有点旧-仍然可以用于SSD驱动器吗?
罗布·莱文


罗布·莱文:我不知道它是否可以用于SSD驱动器。如果SSD驱动器包含SMART技术,则应该使用。在NetBSD中,“ atactl”命令将提供对此的访问权限,因此您可以尝试从Live NetBSD CD引导,以查看是否也可以获得一些答案。
Randolf Richardson 2011年


0

就我而言,我必须将“ AMD SATA Controller”驱动程序更新为“ Standard AHCI 1.0 Serial ATA Controller”驱动程序。

找到设备'AMD SATA Controller'->属性->驱动程序选项卡->更新驱动程序->浏览计算机以获取驱动程序软件->让我从计算机上的设备驱动程序列表中进行选择->选择'标准AHCI 1.0串行ATA控制器->重启

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.