サービスのプロセスを特定する(Windows Vista編)Tech TIPS

Windows Vista以降では、システムに過大な負荷をかけているサービスを特定するのに、タスクマネージャの[プロセス]タブが利用できる。その方法は?

» 2007年05月25日 05時00分 公開
[打越浩幸デジタルアドバンテージ]
Tech TIPS
Windows Server Insider


「Tech TIPS」のインデックス

連載目次

対象OS:Windows Vista



解説

 システムのCPU負荷が高くなっている場合、どのプロセスがその原因になっているかを調査するには、通常はまずタスクマネージャを利用する。しかし一般のユーザープロセスではなく、サービスの場合は、どのサービスがその原因になっているかを調べることは簡単ではない。サービスは、実際にはsvchost.exeというただ1つのプロセスから起動されるので、どのサービスがCPU負荷を上昇させているかといったことが簡単には判断できないからだ。

 TIPS「svchost.exeプロセスとは?」では、svchost.exeプロセスとは何か、どのサービスがどのsvchost.exeプロセスの元で動作しているのかを調査する方法について解説した。この方法を利用すれば、CPU負荷の高いsvchost.exeプロセスから、そこで利用されている(svchost.exeによってホストされている)サービスを見つけることができる。

 しかしWindows Vistaではタスクマネージャの機能が改良され、サービスの一覧や、どのsvchost.exeから起動されたサービスであるかを簡単に確認できるようになっている。本TIPSでは、その方法について解説する。

操作方法

 Windows Vistaのタスクマネージャでサービスのプロセスを表示させるためには、まずタスクマネージャの[プロセス]タブで[すべてのユーザーのプロセスを表示]というボタンをクリックする。これにより、現在ログオンしているユーザーのプロセス以外のものも表示されるようになる。

タスクマネージャでサービスのプロセスを表示させる タスクマネージャでサービスのプロセスを表示させる
svchost.exe配下で動作するサービスのプロセスを見るには、まず[プロセス]タブを表示させる。Windows Vistaでは新しく[サービス]タブも用意されているが、そちらではCPUの負荷などは表示されない。
  (1)このタブを選択してプロセスの一覧を表示させる。
  (2)デフォルトではsvchost.exeプロセスは表示されていない。
  (3)これをクリックする。

 以上の操作を行うと、サービスのホストとなるプロセス、svchost.exeプロセスが表示されるようになる。このプロセスは、Windows XPでは(デフォルトでは)数個しか動作していなかったが、Windows Vistaでは次のように非常に多く動作している。サービスのプロセスを確認するには、この画面で目的のsvchost.exeプロセスを選択して右クリックし、ポップアップメニューから[サービスの表示]を選択する。

サービスを表示させる サービスを表示させる
ある特定のsvchost.exe下で動作しているサービスを表示させるには、svchost.exeプロセスを選んで、[サービスの表示]メニューを実行する。
  (1)サービスのホストとなるsvchost.exeプロセス。Windows OS上で動作するサービスは幾つかのカテゴリに分けられ、それぞれこのsvchost.exeというプロセスの下で動作している。
  (2)このsvchost.exeプロセスの下で動作しているサービスを調べたいとする。
  (3)あるsvchost.exeプロセスを選んで右クリックし、ポップアップメニューから[サービスの表示]を実行する。

 以上の操作を行うと、次のようなサービスの一覧が表示される。選択状態になっているのが、上で選んだsvchost.exe下で動作しているサービスである。通常はこのように、1つのsvchost.exeの中で複数のサービスが稼働している。

特定のsvchost.exeに対するサービスの表示 特定のsvchost.exeに対するサービスの表示
先の操作を行うと、[サービス]タブに切り替わると同時に、幾つかのサービスが選択された状態になっている。これが、先ほど選択したsvchost.exeに対応するサービスである。
  (1)[サービス]タブに切り替わる。
  (2)これらのサービスが全て、1つのsvchost.exeに対応している。

 Windows Vistaのタスクマネージャでは、従来のWindows OSのそれと比べて、新たに[サービス]タブが追加されている。だが[サービス]タブをクリックしただけでは、単にサービスの一覧が表示されるだけで、svchost.exeとの関係は表示されない。

 なおこの[サービス]タブにおいて、特定のサービスを選んで右クリックすると、[サービスの開始]や[サービスの停止]というメニューが表示され、サービスの実行を制御できる。また[プロセスの表示]というメニューを実行すると、逆に[プロセス]タブに切り替わると同時に、このサービスをホストしているsvchost.exeプロセスが選択表示される。

「Tech TIPS」のインデックス

Tech TIPS

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。