如何修復Mac的“ kernel_task” CPU使用率過高的Bug?


當計算機開始緩慢運行時,這從來都不是一件有趣的事情,但是當您弄不清它為何如此緩慢時,甚至會變得更糟。如果您已經關閉了所有程序,並且Mac上的所有內容仍然感覺像是在糖蜜中移動,這可能是令人討厭的kernel_task導致高CPU使用率的跡象。在Mac上,kernel_task是賦予各種低級功能的名稱,這些功能可使您的計算機的其余部分正常工作。這意味着弄清罪魁禍首可能是艱難的。我們已經看到了很多,所以我們有一些技巧可以幫助您擺脫這個問題。

診斷慢速Mac

如果您的Mac似乎運行緩慢,正在產生大量熱量,或者由於風扇速度過高而聽起來好像即將起飛,那么您將需要打開Activity Monitor並找出原因。從本質上講,這相當於macOS與Windows Task Manager的等效關系。活動監視器是用於管理資源和流程的有用工具。

您可以使用Spotlight打開“活動監視器”:只需按Cmd + Space,然后開始鍵入“活動”,它應該會彈出。您還可以在“ 應用程序”>“實用程序”下找到它,並且您可能希望將其固定在Dock上,以便在遇到重大問題時可以更快地進行訪問。

您的計算機運行緩慢的原因應該在“ CPU”選項卡上顯而易見。只需單擊%CPU列標題即可按處理器使用情況來組織正在運行的進程。任何使用大量處理能力的東西都會出現在頂部。當您的計算機在后台執行各種任務時,這些命令會四處移動。

為什么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使用率

對於所有與OS相關的問題,最明顯的解決方法可能是更新到最新版本的macOS。只需啟動系統偏好設置,單擊軟件更新,然后運行所有未完成的Apple軟件更新。

kernel_task進程導致CPU使用率較高的另一個常見原因是Adobe Flash。Flash對於瀏覽Web必不可少的時代已經過去了,但是對於特定的Web應用程序或網站,您仍然可能需要Flash。

您可以使用Google Flash之類的瀏覽器來提供Flash(盡管可以選擇),而不是保持Flash的安裝。最有可能的是,您根本不需要Flash,因此可以安全刪除。

如果要完全刪除Flash,請運行Adobe Flash Player安裝管理器,然后單擊“ 卸載”。

深入研究kernel_task CPU的高使用率

有些已經成功地刪除了內核擴展,這些擴展是能夠執行低級任務的代碼模塊。這些擴展中的絕大多數也稱為“ kexts”,它們是Apple作為核心macOS環境的一部分安裝的。某些軟件將安裝第三方擴展程序作為驅動程序,或用於控制硬件。

檢查第三方kext是否引起您的kernel_task問題的一種快速方法是將計算機重新啟動到安全模式。為此,請重新啟動計算機並在啟動時按住Shift鍵。安全模式僅加載所需的內核擴展,因此,如果在此環境中未發生問題,則表明第三方kext存在問題。

要深入了解這一點,請像往常一樣重新啟動系統並啟動Terminal。然后,運行kextstat命令以查看當前正在加載哪些內核擴展。所有Apple擴展程序都將看起來像。同時,第三方驅動程序中將包含開發人員名稱,例如,僅舉幾例。com.apple.[etc]com.paragon-software.filesystemsch.tripmode.TripModeNKE

刪除這些文件的最佳方法是卸載關聯的軟件。對於某些應用程序,這僅意味着將應用程序文件移至“廢紙rash”,然后輸入管理員密碼以允許更改。

其他可能包括您需要運行的PKG卸載程序文件。對於其他內容,請轉到“ 系統偏好設置”,然后查找任何第三方偏好設置窗格。例如,Paragon的NTFS驅動程序會在其設置旁邊隱藏“ 卸載”選項。

從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的方法。首先使用命令查找Mac的型號。system_profiler -detailLevel mini | grep "Model Identifier:"

運行以下命令:

  1. cd /System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/ACPI_SMC_PlatformPlugin.kext/Contents/Resources

移動並備份與模型相關的文件。例如,如果您的標識符是MacBookPro8,2您將運行:

  1. sudo mv MacBookPro8_2.plist MacBookPro8_2.bak

重新引導進入恢復模式,並使用該命令再次啟用系統完整性保護。csrutil enable

同樣,這是最后解決方法。僅在由於kernel_task導致Mac無法使用而無法完成任何工作時才嘗試嘗試。這不是短期解決方案,即使重新安裝操作系統后,它仍然存在。

即使這樣,在每次主要軟件更新或操作系統升級后,您也需要重復此過程,因為Apple會還原您移動的文件。

kernel_task Bug是一個新問題嗎?

通常,升級到新版本的macOS會帶來新的特性和功能,但也會帶來bug。在開始挑戰極限的較舊型號的硬件上尤其如此。如果您離不再支持Mac的世代相距甚遠,則可能意味着您的型號對於Apple而言並不是那么重要。

您最近是否升級了macOS版本?如果只有那樣,您才開始在Mac上看到kernel_task的問題,那可能是罪魁禍首。如果您不依賴最新更新中引入的新功能,則可以安全地降級。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM