解決CPU為什麼佔用100%的方法?

Tags: 程序,

症狀:經常無緣無故出現CPU佔用100%的情況 初步診斷:系統資源佔用得高,有很多種可能性,但最常見的故障來自於Svchosts.EⅩE,它是一個容器,承載著各種系統服務,所以Svchost.EⅩE突然出現問題,那就一定是有系統服務出了故障。 。

小知識——Svchost.EⅩE有什麼作用 Svchost.EⅩE是NT核心作業系統(Windows 2000/XP/2003都屬於NT核心作業系統)獨有的程序,“Svchost”其實就是“Service Host”(服務宿主)的縮寫。微軟官方對它的定義是:Svchost.EⅩE是從動態連結庫(DLL)中執行的服務的通用主機程序名稱,通俗講,它就是一個服務裝載器。大家可以把每個服務想象成一張音樂CD,而Svchost.EⅩE就是用來播放這種CD的CD機。每個Svchost.EⅩE程序都包含多個系統服務,同時系統中也有多個Svchost.EⅩE程序(Windows XP會有4~6個Svchost.EⅩE程序,而Windows 2000通常只有2個Svchost.EⅩE程序,這個數字都是根據已啟動的服務的情況而定的)。

小提示 點選“開始→執行”,在執行框中輸入“CMD”回車,然後在開啟的命令列視窗中輸入“Tasklist /svc”(不含引號)命令,可以更直觀地看到每個Svchost.EⅩE程序裝載的服務名稱列表。

處方:用Process Explorer找出藏在Svchost.EⅩE裡的壞蛋

實際上Svchost.EⅩE中的服務都是程序中的DLL模組,所以用程序檢視工具找出程序中有問題的執行緒模組,就能找到問題所在。

第一步:找出有問題的程序。下載並安裝Process Explorer[codecode]執行後在主介面中找到CPU佔用率較高的Svchost.EⅩE程序,將滑鼠懸停在這個程序項上時,會顯示出這個程序中具體包含哪些系統服務(

第二步:找出有問題的執行緒。右擊有問題的程序項,選擇“Properties”(屬性),在彈出的屬性框中切換至Threads選項卡,就能看到下方列表中CPU佔用率最高的執行緒

選中它後點擊“Suspend”(暫停),如果這時系統的高CPU佔用現象得到緩解,則說明已經確診了,再點選“Stack”(堆疊),可以看到大多數佔用CPU的操作都源於wuaeng.dll的檔案

第三步:找出有問題的服務。執行services.msc開啟服務管理介面

根據剛才找到的問題檔案的名稱查詢匹配的服務,同時可以根據經驗對檔名的全稱進行推算,比如“wuaueng”就很容易讓人想到“Windows Update Automatic Updates Engine”(Windows升級-自動升級引擎),根據綜合比對可以將最後目標鎖定為“Windows Update”服務,因為它的服務名稱是“wuauserv”。

第四步:關閉問題服務。在服務管理介面中雙擊開啟有問題的服務項,然後在其屬性視窗中將“啟動型別”設定為“手動”並點選“停止”就行了。

程序,
相關問題答案