系統(tǒng)軟件園 - 專注分享最好的電腦系統(tǒng)軟件!免費(fèi)安全下載 系統(tǒng)軟件園首頁 | Win7激活工具 | 熱門專題
系統(tǒng)軟件園>您的位置:首頁 > > 系統(tǒng)教程 > Win7系統(tǒng)教程 >

svchost.exe占用cpu高50%如何解決?

更新時間:2017-05-20 20:12:44| 編輯:本站整理 | 信息來源:本站整理|瀏覽數(shù):

大家都知道在Windows系統(tǒng)中svchost.exe進(jìn)程是系統(tǒng)進(jìn)程,而且會有很多個,一般來說并不會影響系統(tǒng)性能,不過某些情況下出現(xiàn)svchost.exe占用cpu高達(dá)到25%甚至50%的情況也會出現(xiàn),這時該怎么解決呢?本文由svchost.exe的運(yùn)行原理說起,然后幫助大家解決svchost.exe占用CPU高的問題。

故障圖如下:

svchost.exe占用cpu 50%

SVCHOST.EXE 位于Windows\system32系統(tǒng)文件夾,其文件描述為“Generic Host Process for Win32 Services”。當(dāng)Windows啟動時,SVCHOST.EXE將自動檢查Windows注冊表的系統(tǒng)服務(wù)組成、構(gòu)建系統(tǒng)服務(wù)列表,然后將相關(guān) 的.DLL動態(tài)鏈接庫文件加載為具體的運(yùn)行中的系統(tǒng)服務(wù)。因此,我們可以將SVCHOST.EXE看作一個“用于加載系統(tǒng)服務(wù)的宿主程序”

由于每個SVCHOST.EXE進(jìn)程可能會加載一個或若干個系統(tǒng)服務(wù),直到所有的SVCHOST.EXE將全部系統(tǒng)服務(wù)加載完畢,所以我們會在任務(wù)管理器 中看到多個SVCHOST.EXE同時運(yùn)行,這是設(shè)計使然。一般地,Windows XP/Windows Server 2003可能會有不超過六個SVCHOST.EXE同時運(yùn)行;而Windows Vista/Windows Server 2008/Windows 7會有不少于十個SVCHOST.EXE同時運(yùn)行。

當(dāng)您在Windows任務(wù)管理器中查看 SVCHOST.EXE進(jìn)程時,SVCHOST.EXE進(jìn)程的“用戶名”應(yīng)該顯示為SYSTEM、LOCAL SERVICE或NETWORK SERVICE。(如果在任務(wù)管理器中看不到“用戶名”,請在菜單中選擇“查看”-“列設(shè)置”,選中“用戶名”復(fù)選框。)如果某個SVCHOST.EXE 進(jìn)程的“用戶名”顯示的是用戶帳戶的名稱(例如Administrator),則這個SVCHOST.EXE很可能是冒仿的惡意程序。

另外您需要確認(rèn),您看到的SVCHOST.EXE進(jìn)程的名稱拼寫是否有誤。比如假設(shè)顯示的進(jìn)程名稱是SVCH0ST.EXE(用數(shù)字0替換了字母O),則 很可能是冒仿的惡意程序;再比如進(jìn)程的名稱雖然是SVCHOST.EXE,但此進(jìn)程卻沒有位于Windows\system32(Windows Vista以上版本的任務(wù)管理器可以查看進(jìn)程所在的文件夾路徑),則也可能是冒仿的惡意程序。

由于SVCHOST.EXE是加載系統(tǒng)服務(wù)的宿主進(jìn)程,所以您如果發(fā)現(xiàn)某SVCHOST.EXE進(jìn)程占用的系統(tǒng)資源較多,即表明通過這個 SVCHOST.EXE進(jìn)程加載的系統(tǒng)服務(wù)占用的系統(tǒng)資源較多。您首先需要確定通過這個SVCHOST.EXE進(jìn)程加載的系統(tǒng)服務(wù)具體是什么,然后根據(jù)計 算機(jī)的實(shí)際情況決定是否關(guān)閉相應(yīng)的系統(tǒng)服務(wù)、以釋放服務(wù)占用的系統(tǒng)資源,這樣SVCHOST.EXE即可釋放相應(yīng)的系統(tǒng)資源。

雖然大多數(shù)系統(tǒng)服務(wù)只有在遇到故障時才會占用較高的系統(tǒng)資源,但某些特殊的服務(wù)即使是正常工作狀態(tài)也將消耗較多系統(tǒng)資源。例如Automatic Updates自動更新服務(wù),當(dāng)自動更新在后臺搜索可用的系統(tǒng)更新程序時必將占用較高的資源,這是設(shè)計使然而不是故障。

判斷一個SVCHOST.EXE加載了哪些系統(tǒng)服務(wù)有兩種方法

判斷方法一:

 1、在Windows任務(wù)管理器的“進(jìn)程”選項(xiàng)卡中查看占用資源較高的SVCHOST.EXE進(jìn)程對應(yīng)的PID,將PID記下。(如果在任務(wù)管理器中看不到“PID”,請在菜單中選擇“查看”-“列設(shè)置”,選中“PID”復(fù)選框。)

2、以管理員權(quán)限運(yùn)行命令提示符(CMD.EXE),在命令提示符中執(zhí)行:

TASKLIST –SVC

您將看到類似如下所示的結(jié)果:  

圖像名                         PID                       服務(wù)
     SVCHOST.EXE             1104                     DcomLaunch,TermServices
     SVCHOST.EXE             1188                     RpcSs
     ……

 

3、對 照您在任務(wù)管理器中看到的SVCHOST.EXE的PID,在上述結(jié)果中查找對應(yīng)的 SVCHOST.EXE。例如,假設(shè)您在任務(wù)管理器中看到PID為1188的SVCHOST.EXE占用了較多系統(tǒng)資源,而TASKLIST –SVC的結(jié)果顯示PID為1188的SVCHOST.EXE加載的服務(wù)是RpcSs,即表明RpcSs服務(wù)(Remote Procedure Call (RPC) 服務(wù))占用了較高的系統(tǒng)資源。

判斷方法二:

1、在microsoft.com下載系統(tǒng)工具Process Explorer:

http://www.microsoft.com/technet/sysinternals/Utilities/ProcessExplorer.mspx m.onuomy.cn(http://www.microsoft.com/technet/sysinternals/Utilities/ProcessExplorer.mspx

 

2、運(yùn)行Process Explorer,在進(jìn)程列表中找到占用系統(tǒng)資源較多的SVCHOST.EXE進(jìn)程,右鍵單擊選擇Properties(屬性),切換至Services(服務(wù))選項(xiàng)卡,在這里即可查看SVCHOST.EXE進(jìn)程加載的系統(tǒng)服務(wù)是什么。


當(dāng)我們判斷完成后,定位到加載的服務(wù)我償可以打開本地服務(wù),然后嘗試停止服務(wù)再啟動一般就可以解決問題了。解決案例:


通常情況下,網(wǎng)絡(luò)不好時Windows自動更新服務(wù)可能會失敗,導(dǎo)致其反復(fù)重試,結(jié)果CPU負(fù)載極高。其表現(xiàn)為:系統(tǒng)啟動幾分鐘后 svchost.exe就會占100% cpu資源,但是拔掉網(wǎng)線就好了。

解決辦法:

      1、進(jìn)入安全模式
      2、刪除C:\WINDOWS\SoftwareDistribution下面所有的文件重啟機(jī)器,
      3、 打開控制面板->管理工具->服務(wù),找到【自動更新(Automatic Updates)】,設(shè)成手動更新或者關(guān)閉自動更新,
      4、重啟機(jī)器,刪除C:\WINDOWS\SoftwareDistribution下面的文件,這時再在控制面板里恢復(fù)自動更新設(shè)置。

當(dāng)然不同的問題要用不同的方法來解決,多搜索網(wǎng)絡(luò)上可能都會解決答案。


返回頂部


系統(tǒng)軟件園發(fā)布的系統(tǒng)鏡像及軟件均來至互聯(lián)網(wǎng),僅供學(xué)習(xí)和研究使用,不得用于任何商業(yè)用途并請在下載后24小時內(nèi)刪除,如果滿意請聯(lián)系版權(quán)方購買。
如果您發(fā)現(xiàn)本站侵害了您的版權(quán),請立即聯(lián)系我們,本站將第一時間進(jìn)行相關(guān)處理。聯(lián)系方式(見首頁)
版權(quán)聲明|下載聲明 Copyright @ 2016 系統(tǒng)軟件園