如何修复Mac的“ kernel_task” CPU使用率过高的错误

It’s never fun when your computer starts running slowly, but it’s even worse when you can’t figure out why it’s so slow. If you’ve shut down all the programs you can and everything on your Mac still feels like it’s moving through molasses, this could be a sign of the dreaded kernel_task causing high CPU usage.

在Mac上,kernel_task是赋予各种低级功能的名称,这些功能可使计算机的其余部分正常工作。这意味着弄清罪魁祸首可能是艰难的。我们已经看到了很多,所以我们有一些技巧可以帮助您摆脱这个问题。

诊断慢速Mac

如果您的Mac似乎是运行缓慢,产生大量热量或由于风扇转速过高而发出声音,那么您需要打开活动监视器并找出原因。从本质上讲,macOS与Windows Task Manager等效。活动监视器是用于管理资源和流程的有用工具。

您可以使用Spotlight打开活动监视器:只需按 Cmd + Space ,然后开始键入“活动",它应该会弹出。您也可以在应用程序>实用程序下找到它,并且当遇到重大问题时,可能希望将其固定在Dock上,以便更快地访问。

原因在 CPU 标签上,计算机运行速度应该很明显。只需单击%CPU 列标题即可按处理器使用情况来组织正在运行的进程。任何使用大量处理能力的东西都会出现在顶部。当您的计算机在后台执行各种任务时,它们会四处移动。

高CPU使用率通常仅是您不期望的问题。如果您正在运行游戏,在浏览器中观看视频或编辑视频,则可以期望机器会占用资源。如果单个Safari标签或Mac进程使用的资源超过了其应有的份额,那通常意味着出了点问题。

为什么kernel_task是罪魁祸首?

您可以通过点击杀死大多数进程在它们上,然后点击屏幕左上角的 X 。不幸的是,您无法针对以下特定过程执行此操作: kernel_task 。原因是kernel_task实际上是macOS的一部分。

它不是单个进程,而是一个标签下的一系列进程。在工作时,macOS在后台执行各种任务。其中包括通过网络发送和接收数据,将数据写入磁盘和从磁盘读取数据,以及为Spotlight搜索索引新文件夹或磁盘。

此过程通常会在上使用大量可用RAM。 >“内存" 标签,但不必担心。正在使用的RAM数量将根据需要增加和减少。但是,高CPU使用率会使整个系统陷入瘫痪,甚至导致偶尔的整个系统崩溃。

那么,如何阻止kernel_task对Mac的性能产生负面影响?

解决kernel_task问题的简单解决方案

在许多情况下,只需重启Mac即可立即解决问题。不过,如果您遇到此问题已有一段时间,这不是永久的长期解决方案。相反,这是一个短期修复措施,应该会立即产生结果。

无论是什么原因导致CPU使用率峰值都可能返回。因此,如果您遇到过重复的事件,您可能也想尝试重置系统管理控制器(SMC)。这很容易做到,并且可以解决各种macOS问题。

重置SMC的说明根据您所拥有的Mac型号而略有不同。由于它可以解决很多问题,因此我们提供了完整的指南,详细介绍了如何重置Mac的SMC。它还涵盖了重置PRAM(Mac的另一部分,可能导致多个问题)的问题。

kernel_task其他解决方案CPU占用率高

对于任何与操作系统相关的问题,也许是最明显的解决方法是要更新到最新版本的macOS。只需启动系统偏好设置,单击软件更新,然后运行任何出色的Apple软件更新。

kernel_task进程导致CPU使用率高的另一个常见原因是Adobe Flash。 Flash对于浏览网络必不可少的时代已经过去,但是您可能仍需要特定的Web应用程序或网站使用它。

您可以使用Google Chrome之类的浏览器来代替安装Flash,提供Flash(尽管可以选择)。最有可能的是,您根本不需要Flash,因此可以安全删除。

如果要完全删除Flash,请运行 Adob​​e Flash Player安装管理器,然后单击卸载

深入挖掘更高的kernel_task CPU使用率

有些人已成功删除了内核扩展,内核扩展是能够降低性能的代码模块级任务。这些扩展中的绝大多数也称为“ kexts",它们是Apple作为核心macOS环境的一部分安装的。某些软件会将第三方扩展安装为驱动程序或用于控制硬件。

检查第三方kext是否引起您的kernel_task问题的一种快速方法是将计算机重新启动到安全模式。为此,请重新启动计算机并在启动时按住 Shift 键。安全模式仅加载所需的内核扩展,因此,如果在此环境中未发生问题,则表明第三方kext存在问题。

要深入研究此问题,请按正常方式重新启动系统并启动终端。然后,运行 kextstat 命令以查看当前正在加载哪些内核扩展。所有Apple扩展名都将类似于 com.apple。[等] 。同时,第三方驱动程序中将包含开发人员名称,例如 com.paragon-software.filesystems ch.tripmode .TripModeNKE 仅举几例。

删除这些文件的最佳方法是卸载关联的软件。对于某些应用程序,这仅意味着将应用程序文件移至“废纸rash",然后输入管理员密码以允许更改。

其他应用程序可能包括您需要运行的PKG卸载程序文件。其余部分,请转到系统偏好设置,然后查找任何第三方偏好设置窗格。例如,Paragon的NTFS驱动程序会在其设置旁边隐藏 Uninstall 选项。

从OS X El Capitan开始,Apple引入了一项新的安全功能,该功能打破了第三点。队的修改。系统完整性保护(简称SIP)可以阻止应用向Apple自己的应用中注入代码,并阻止其写入Apple认为对系统安全重要的驱动器的某些部分。

这可以提高系统稳定性,因此您应该在现代版本的macOS中很少看到此问题。

仍然具有很高的CPU使用率吗?当所有其他方法都失败时该怎么办

这里的最终解决方案有点冒险:删除Apple自己的内核扩展。不建议这样做。但是,如果您尝试了所有其他操作后仍然看到kernel_task导致CPU使用率很高,那么您可能要尝试使用此解决方案。

开发人员和博客作者Viktor Petersson撰写了大量有关kernel_task及其相关问题的文章。它。在他的情况下,这很可能是由不可靠的声卡引起的。 Petersson的最初文章主要针对Mac OS X Yosemite,尽管后来他又针对El Capitan和Sierra进行了更新。

我们尚未测试此修复程序,无法说它是否对您有用。 。如果您有兴趣尝试一下,请按照以下步骤操作:

  • 使用Time Machine或其他备份解决方案为Mac创建备份。
  • 关闭通过进入恢复模式并运行 csrutil disable 命令来进行系统完整性保护。
  • 遵循Viktor的方法。首先使用 system_profiler -detailLevel mini查找Mac的型号| grep“模型标识符:" 命令。
  • Run the following command:
  • cd /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources
  • Move and back up the file relevant to your model. For example, if your identifier is MacBookPro8,2 you would run:
  • sudo mv MacBookPro8_2.plist MacBookPro8_2.bak
  • 重新引导至恢复模式,并使用 csrutil enable 命令再次启用系统完整性保护。
  • 同样,这是最后解决方法。仅当由于kernel_task导致Mac无法使用而无法完成任何工作时,才尝试尝试。这不是一个短期解决方案,即使重新安装操作系统后仍然存在。

    即使如此,您也需要在每次主要软件更新或操作系统升级后重复此过程,例如Apple会还原您移动的文件。

    kernel_task Bug是一个新问题吗?

    通常,升级到新版本的macOS会带来新的特性和功能,但是它也会引入错误。在开始挑战极限的较旧型号的硬件上尤其如此。如果距离不再支持的Mac一代又一代了,那可能意味着您的型号对于Apple来说并不是最重要的事情。

    您最近是否升级了macOS版本?如果只有那样,您才开始在Mac上看到kernel_task的问题,那可能是罪魁祸首。如果您不依赖最新更新中引入的新功能,则可以安全地降级。

    想尝试一下吗?我们有一个指南,详细介绍了降级到旧版macOS的多种方法。

    标签: 活动监视器 CPU Mac提示 macOS 故障排除