Windows Update で svchost.exe の CPU 使用率が高くなる理由
対象プロダクト:Windows全般
カテゴリー:トラブルシュート
Windows Update では更新プログラムをすべてダウンロードするのではなく、現在適用されているモジュールとの差分のみをダウンロードして結合します。
差分ファイルの結合はデルタ圧縮方式となり、BITS サービス(Background Intelligent Transfer Service)が行います。
また BITS はサービス DLL として実装されており、サービスホスト(svchost.exe)をホストとして実行されます。
tasklist /svc コマンドでどの PID の svchost.exe で BITS が実行されているかが分かります。
イメージ名 PID サービス ========================= ======== ============================================ ... svchost.exe 988 Appinfo, AppMgmt, BITS, Browser, CertPropSvc, gpsvc, iphlpsvc, LanmanServer, ProfSvc, Schedule, SENS, SessionEnv, ShellHWDetection, Themes, Winmgmt
またデルタ圧縮には CPU に負荷がかかります。
そのため、Internet Exploror の累積的な修正プログラムなどの多数の修正モジュールが含まれるコンポーネントのインストール時に、この問題は特に顕著に起こります。
この問題を回避するためには差分アップデート(デルタ圧縮)を行わないことです。
つまり、Windows Update ではなく、フルインストール版の修正プログラムをダウンロードしてインストールする方法になります。
※Microsoft 社も回避方法としてこの方法を案内しています。
公開日時:2014年06月03日 12:48:52