2010年9月12日 星期日

實作解決svchost狂吃CPU資源

由於XP內建的工作管理員所提供的效能資訊極有限,所以到微軟官網下載了Process Explorer for Windows v10.21來檢查svchost.exe到底都在忙什麼。下載解壓並執行Process Explorer之後,視窗上可一目瞭然發現原來是Windwos Update讓它忙得不可開交,每隔一段時間就Automatic Updates來狂吃CPU資源。

這種現象當然不是XP正常運作時會出現的,所以需要動點手腳幫已經後天失調的相關設定重新調校一下,步驟分為三大項整理如下:

(一)確認兩項系統服務。

(1)Automatic Updates

  1. 依序選取左下的「開始」->「執行」,輸入「services.msc」並按「確定」。(這個步驟主要是叫出服務視窗)
  2. 找到「Automatic Updates」這項服務,連點二下滑鼠左鍵開啟內容設定。
  3. 點選「登入」這個頁籤,先確認目前登入身分為「本機系統帳戶(L)」,而且不勾選底下的「允許服務與桌面互動(W)」。接著再確認「Automatic Updates」這項服務已在目前的「硬體設定檔」中被啟用,若未啟用,則按下「啟用」鍵。

(2)Background Intelligent Transfer Service (BITS)

  1. 在相同服務視窗找到「Background Intelligent Transfer Service」這項服務,連點二下滑鼠左鍵開啟內容設定。
  2. 點選「登入」這個頁籤,先確認目前登入身分為「本機系統帳戶(L)」,而且不勾選底下的「允許服務與桌面互動(W)」。接著再確認「Background Intelligent Transfer Service」這項服務已在目前的「硬體設定檔」中被啟用,若未啟用,則按下「啟用」鍵。

(二)修復 Windwos Update 執行元件。

  1. 依序選取左下的「開始」->「執行」,輸入「REGSVR32 WUAPI.DLL」並按「確定」。接著視窗會跳出「DllRegisterServer 在 WUAPI.DLL 成功」的訊息,按「確定」完成動作並關閉視窗。接著,依照上述步驟逐一執行以下Windwos Update 元件:
  2. REGSVR32 WUAUENG.DLL
  3. REGSVR32 WUAUENG1.DLL
  4. REGSVR32 ATL.DLL
  5. REGSVR32 WUCLTUI.DLL
  6. REGSVR32 WUPS.DLL
  7. REGSVR32 WUPS2.DLL
  8. REGSVR32 WUWEB.DLL

(三)清除舊有 Windows Update 暫存目錄。

  1. 依序選取左下的「開始」->「執行」,輸入「cmd」並按「確定」以開啟命令提示視窗。
  2. 在命令提示視窗裡的命令提示字元右方輸入指令「net stop WuAuServ」暫停Automatic Updates服務。
  3. 依序選取左下的「開始」->「執行」,輸入「%windir%」並按「確定」以開啟系統資料夾。
  4. 在系統資料夾裡找到「SoftwareDistribution」這個目錄,並且把它更名為「SDbak」。
  5. 依序選取左下的「開始」->「執行」,輸入「cmd」並按「確定」以開啟命令提示視窗。
  6. 在命令提示視窗裡的命令提示字元右方輸入指令「net start WuAuServ」重新啟動Automatic Updates服務。

沒有留言:

張貼留言