Site map Dr. Computer Did you know ? Life Android / iOS
 


•   svchost.exe 是病毒嗎? ... 2012-02-17

電腦使用者一定會很關心自己電腦的穩定性與運行速度,當電腦於使用時感到速度有點頓,開啟檔案或程式會感覺有點慢,這時聰明的您也許會打開工作管理員,來瞧瞧到底是那個程式程序占用了系統資源,讓 CPU 的使用率高居不下,這樣我們就可以找出讓電腦運作卡住的真正元凶。

今天我們就來談談,svchost.exe 這個存在 Windows 作業系統中的進程程序。

大哉問:「到底什是 svchost.exe 、為什麼在工具管理員中有好幾組 svchost.exe 、為什麼 svchost.exe 耗掉系統資源,讓 CPU 的使用率高居不下、svchost.exe 是病毒嗎?」。






什麼是 svchost.exe

我們從微軟中文知識庫編號 314056《Svchost.exe 的說明》一文中,可以得到如下說明 :

" svchost.exe 是從動態連結程式庫 ( DLL ) 執行之服務的一般性主處理程序名稱。電腦啟動時,svchost.exe 會檢查登錄中的服務部分,以建立一份它需要載入的服務清單。多個 Svchost.exe 執行個體可以同時執行,每一個 svchost.exe 工作階段都可以包含一組服務,這樣個別的服務就可以依據 svchost.exe 啟動的方式與位置來執行。"

上述說明,說明了這些程序是開機後系統必須啟動的程序,每個 svchost.exe 會調用相關的 dll 檔來啟動相關的服務。說穿了,這些程序是正常的,關閉這些程序電腦可能會導致不正常運作,甚至造成當機。


為什麼在工具管理員中有好幾組 svchost.exe ?

讓我們來看一下,Win7 開機後 svchost.exe 的實際運作情況。

在 Win7 系統中開機完成後的會有許多個 svchost.exe 一併執行,這是為了啟動電腦本機的各項服務所需,因此會有多個 svchost.exe 存在,而各個程序都會耗用 CPU 與記憶體空間 。於電腦閒置時,正常的情況下的 CPU 使用率應該降到幾近於零,但記憶體空間仍會被占用。(如下圖)




為什麼 svchost.exe 佔用系統資源,讓 CPU 的使用率高居不下 ?

非中毒正常的情況下,Windows 系統自動更新預設為開啟,因此 svchost.exe 會於開機完成後或是固定的時間調用 MSI.DLL 或是 NT.DLL,搜尋可用的網際網路連線,並於電腦連上網路後自動搜尋 Microsoft 產品的更新元件。就是這個更新動作於執行時讓 CPU 狂飆而高居不下。若是碰到 CPU 或記憶體等級較低的老舊電腦時,就會耗用掉全部資源,造成電腦卡住假死。

因此老舊電腦要避免這個現象,最簡單的方式就是關閉自動更新,改用手動更新。再不然就將自動更新時間排程改到電腦非尖峰使用時間,並保持開機連線狀態。這只能二選一,魚與熊掌。

下圖是筆者電腦於開機完成並執行自動更新時,CPU 的使用率情況,CPU 使用率達 58% 。




svchost.exe 是病毒嗎 ?

因為 svchost.exe 對電腦系統運作十分重要,而包含 Win 2000/XP 及以上的 NT 作業系統均採用這個方式運作,因此病毒是不會輕易放過它的。2003年及2008年的疾風病毒就是衝著微軟的作業系統安全漏洞而來。

在正常的 Win2000 中有兩個 svchost 程序, XP 中則有四個或四個以上的 svchost 程序 ,Win7 更多達十二個。

要判斷是否為病毒,最簡單的方式就是仔細的看一下這些執行檔的所在位置與檔名。正常的 svchost.exe 應該存放在系統槽,也就是 C:\Windows\System32 ( %systemroot%\System32 ) 之中。而且檔名全都是以小寫英文字母組成。因此如果 svchost.exe 出現在其他資料夾之中或是檔案名稱夾雜大寫英文字母或阿拉伯數字,就是病毒所偽裝。這時就是該請防毒軟體該出場的時候了,而網路上也有許多專門察殺 svchost.exe 病毒的軟體,所以這些資源應該都不難取得。

要判斷 svchost.exe 是否為病毒偽裝,請參考下圖紅色框框中的檔案位置與檔案名稱。

如果無法確定 svchost.exe 是否為病毒偽裝,最好不要隨意刪除,以免造成系統運作不正常,甚至於導致無法開機。正確的方式是採取完整的掃毒動作。


上一頁   下一頁     本區總覽 站內總覽