* Process Explorer [#t3137e03] Windows で、プロセスごとのCPU使用状況を表示するツール。 - [[Process Explorer v11.02:http://www.microsoft.com/technet/sysinternals/utilities/processexplorer.mspx]] -- [[ダウンロード(ProcessExplorer.zip):http://download.sysinternals.com/Files/ProcessExplorer.zip]] ** タスクマネージャでは情報が足りない [#i3503d76] タスクバーを右クリックして、そのコンテキストメニューから「タスクマネージャ」を選択する、若しくは、Ctrl+Alt+Delキーを同時押しして表示される、いわゆる Windows タスクマネージャで、現在のCPU使用率やメモリ使用状況をチェックすることができる。 しかし、このタスクマネージャの「プロセス」タブで表示されるプロセスはアプリケーション(実行形式 *.exe)のみであり、バックグラウンドで動作しているサービスやDLLなどの占有状況は表示されない。 ときどき Windows を長時間使用していると、いつの間にかCPU使用率が100%(最近のDual Core や Hyper Threading 機能のある CPU であれば 50% )になっていることがある。一体どのプロセスがCPUを占有しているのかとタスクマネージャを開いてみるも、CPUを一番消費しているのは“System Idle Process”だったりする。 この原因のほとんどは、System 上にロードされたDLLやCOMプロセスなどがロードされたまま開放されていない状況である場合がほとんど。DLLの場合、そのHOSTとなるアプリケーションもタスクに残ったままとなっているはずなので、そいつを終了させれば良いのだけど、一体どのプロセスを終了させれば良いのかがわからない。 そんなときに、この Process Explorer でチェックすると良い。 Process Explorer では、サービスなどが起動しているアプリケーションも表示されるので、その中でCPUを以上に占有しているアプリケーションがどれなのかを特定することができる。また、そのプロセスを「Kill Process」によって終了させることも可能だ。 大抵の場合、svchost.exe というプロセスがCPUを占有したままになっていて、こいつは何者かというと、Windows がバックグラウンドで立ち上げるサービスである。これがCPUを占有したままになるというのは、Windows のバグだと思うんだけどなぁ。。 ** 参考サイト [#gb3aae3a] - [[「svchost.exe」の正体を探る:http://gigazine.net/index.php?/news/comments/20061009_svchost/]] - [[Microsoft TechNet:http://www.microsoft.com/technet/sysinternals/default.mspx]] -- [[Process Explorer v11.02:http://www.microsoft.com/technet/sysinternals/utilities/processexplorer.mspx]] ----- [[テンポラリ記憶]]