解决导致OS X迟缓的systemstats CPU使用问题

Anonim

systemstats 进程用于检索有关系统统计信息和电源使用情况的信息,虽然它通常在后台不被注意地运行,但众所周知,systemstatsd 和 systemstats 进程在 OS X 中会随机失控,吃在降低 Mac 速度的同时增加 100%-300% 或更多的 CPU。通常,如果您看到 systemstats 短时间内飙升到活动监视器或顶部,则无需担心,许多标准 Mac 功能可能会导致它暂时出现。例如,通过查看 OS X 电池菜单中的能源使用选项在 MacBook 系列上触发 systemstats 进程,其他用户在调整其他能源设置时可能会短暂看到它。当进程无缘无故地以非常高的 CPU 使用率持续运行时,就会出现问题,这就是我们要在这里解决的问题。

杀死错误的systemstats进程

简单地终止systemstats进程可以解决OS X中几乎所有事件的CPU使用率和缓慢问题。

Terminal:对于那些喜欢使用终端的人来说,因为它的速度,征服疯狂的systemstats过程只是倾销的问题退出 killall 命令:

sudo killall systemstats

sudo是必要的,因为systemstats进程以root身份运行。

Activity Monitor:许多用户更愿意留在 OS X GUI 中,并且 Activity Monitor 还提供了强制退出的能力过程也是:

  1. 打开活动监视器,使用“搜索”功能查找“systemstats”
  2. 选择错误的systemstats进程并选择(x)按钮强制退出
  3. 如果有多个进程在运行,占用大量CPU,则重复

这应该会立即解决问题,但如果您不断尝试访问电池或系统使用情况,那么您将看到该过程再次出现。

如果问题仍然存在,重置SMC可能会解决挥之不去的问题。

此外,禁用App Nap还可以解决systemstats的残余和自发问题,如果它们仅在系统唤醒或启动时发生。

禁用系统统计

不推荐这样做,除了禁用属性电池和电源管理监控(包括 App Nap 功能)外,它可能会产生意想不到的后果,但您可以禁用 systemstats,但从 launchd 卸载守护进程。这应该仅限于高级用户:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstatsd.plist

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstats.daily.plist

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.systemstats.analysis.plist

注意这也将导致所有“powerstats”报告不再出现在控制台系统诊断报告中。

同样,不建议禁用systemstats。这些更改可以通过使用以下三个命令将守护进程重新加载回 launchd 来撤销:

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstatsd.plist

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstats.daily.plist

sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.systemstats.analysis.plist

无论哪种情况,您都需要重新启动 Mac 以使全部更改生效。

解决导致OS X迟缓的systemstats CPU使用问题