Mac OS X - 我如何知道哪个进程导致间歇性冻结?

Mac OS X - 我如何知道哪个进程导致间歇性冻结?

我用的是 2 年前的 Macbook Pro。8GB RAM,总体来说运行很顺畅。如果我每个月重启一次,那就太耗电了。

从今天早上开始,它开始间歇性地锁定 - 无论我使用哪个应用程序,都会停止响应约 5 到 20 秒(最多 30 秒)。我在应用程序中看到的只是旋转的色轮。我仍然(通常)能够四处移动并查看活动监视器,但我使用的应用程序不会响应。锁定发生在所有应用程序中,而不仅仅是浏览器窗口。

我杀死了所有常见的嫌疑程序,试图追踪有问题的应用程序或进程,但没有成功。

几次重启后,我删除了几乎所有在后台运行的程序,但这种情况仍然发生。我最初以为是 Chrome 的问题,但 Safari 也会出现这种情况。

控制台或系统日志中没有任何异常,唯一可见的变化是,如果活动监视器打开,它会在系统解锁后立即显示 IO/sec 的大幅峰值。在命令行上运行 top 没有任何异常。最近几天没有在机器上安装任何东西。

有什么想法我可以使用来追踪违规过程或活动?

答案1

您描述的症状通常是由硬盘故障引起的。查看您的 system.log 和 kernel.log(如果单击“显示日志列表”图标按钮,您可以获取 /Applications/Utilities/Console 以选择这些日志而不是控制台日志)中是否有类似“disk0s2 I/O 错误:未定义”的消息。这些表明您的系统在从硬盘读取一个或多个块时遇到困难。发生这种情况时,所有磁盘 I/O 都会被阻止,而磁盘会进行“慢速读取”,尝试查看它是否可以成功从坏块中清除数据。

现代驱动器会自动锁定坏块,但仅限于 。如果您在日志中看到这些错误消息,您可以通过强制将每个块写入以下内容来恢复驱动器:

  1. 如果您尚未进行良好的备份,请备份您仍可从驱动器中获取的所有重要数据。
  2. 检查您的备份以确保其正确并且有效。
  3. 使用“清空数据”选项擦除硬盘,确保每个块都写入。常规擦除无法完成此操作。
  4. 从备份中恢复。

请注意,具有一两个坏块的硬盘通常仍会在“磁盘实用程序”中显示“SMART 状态:已验证”;通常,直到所有备用块都用完之前,您都不会看到驱动器报告 SMART 故障。比我更有知识的大容量存储工程师告诉我,一旦硬盘开始显示坏块,问题就会滚雪球般扩大,最终导致驱动器死机。不过,我要说的是,我显然很幸运,因为我已经按照描述恢复了几个驱动器,并且它们继续正常工作了好几年,直到我更换了机器。我仍然会非常谨慎,并确保我有一个好的备份策略。

相关内容