Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學

升級 Win7 SP1 後 mscorsvw.exe 佔用高 CPU 的原因與解決辦法

編輯:Win7 常見問題解答

許多用戶在線升級 Windows 7 SP1 後發現系統變慢,工作管理員顯示 mscorsvw.exe 進程佔用 CPU 80%~100%。這到底是什麼進程?該如何處理?

什麼是 mscorsvw.exe?

mscorsvw.exe 是 .NET Runtime Optimization Service(.NET 執行階段優化服務)的執行檔。它的任務是在背景預先編譯 .NET 組件,以提升後續應用程式的啟動速度與記憶體共享效率。

  • 安裝 .NET Framework 後,它會先花 5~10 分鐘編譯高優先順序組件。
  • 之後在系統閒置時處理低優先順序組件。
  • 所有組件編譯完成後,進程會自動結束,不再出現。
  • 編譯期間因屬低優先順序進程,理論上不應搶佔前景程式資源,但在某些情況下會導致 CPU 飆高。

解決方法

方法一:強制完成排隊編譯任務(推薦)

  1. 以「系統管理員身分執行」命令提示字元。
  2. 輸入指令:ngen.exe executequeueditems 並按 Enter。
  3. 此指令會讓所有排隊中的編譯任務立即執行完畢,進程隨後自動結束,CPU 佔用即可恢復正常。

方法二:停用 .NET 執行階段優化服務

  1. 執行 services.msc 開啟服務管理員。
  2. 找到 Microsoft .NET Framework NGEN v4.0.30319_X86(或 v2.0 版本視安裝而定),雙擊開啟屬性。
  3. 將「啟動類型」改為「已停用」,若服務正在執行請點「停止」。
  4. 確定後重新開機。

注意:停用服務會失去 .NET 組件預編譯帶來的效能優勢,建議優先嘗試方法一。

進程詳細資訊

屬性說明
檔案名稱mscorsvw.exe
進程名稱.NET Runtime Optimization Service
描述Microsoft .NET Framework 組件,非必要進程,但除非造成問題否則不建議終止
用途背景預編譯 .NET 組件
開發者Microsoft
安全等級0 (無危險)
系統進程是
背景程序是

相關工具:Ngen.exe (本機映像產生器)

ngen.exe 可建立原生映像(含 CPU 專用機器碼)並安裝至本機映像快取,執行階段直接使用而非即時編譯 (JIT),提升應用程式效能。.NET Framework 2.0 後大幅增強:簡化語法、支援跨應用程式域共用映像、新增 update 動作重建失效映像、利用閒置時間服務延遲執行等。

更多資訊請參考 MSDN:本機映像服務

Copyright © Windows教程網 All Rights Reserved