プロセスモニターとProcessExplorerの使用方法

Windows 10 PCでタスクマネージャー(Task Manager)を使用して、システム上のさまざまなプロセスと、それらが使用しているCPUまたはメモリの量を追跡することがよくありますか?その場合は、 ProcessMonitor(Process Monitor)またはProcessExplorerの2つの代替オプションを使用することをお勧めします。

どちらも、Windows10PCにインストールできる無料のツールです。これらには、 Windowsタスクマネージャー(Windows Task Manager)で表示できるのと同じ情報だけでなく、さらに多くの情報が含まれています。

プロセスモニターとは何ですか?

Process Monitorは、 (Process Monitor)Windowsユーティリティの(utilities)WindowsSysinternalsスイートに含まれている無料の高度な監視ツールです。システムで実行されているすべてのプロセス(all processes running on your system)に関する詳細情報を表示できます。

具体的には、これらは特定のプロセスによってトリガーされたイベントに関する詳細です。 

次のプロセス情報フィールドは、アプリを最初に起動したときにデフォルトで選択されています。

  • プロセス名
  • 詳細
  • 結果
  • 手術
  • 時刻
  • プロセスID(PID)

各プロセスに関するさらに詳しい情報を表示するために選択できる20の追加フィールドがあります。

このツールでプロセス情報を表示するだけにとどまりません。また、任意のフィールドにフィルターを設定して、表示されるデータを制限したり、トラブルシューティングのためにプロセスイベントをログに記録したり、親プロセスと子プロセスの関係を確認できるプロセスツリーを設定したりできます。

Process Explorerとは何ですか?

Process Explorerは、さまざまなアプリケーションがシステムでどのように機能しているかを理解するための最良のツールです。革新的なツリー構造により、各親プロセスが制御しているファイル、ディレクトリ、およびその他のプロセスの内訳が表示されます。 

Process Explorerは、各プロセスが開いたウィンドウハンドルを確認するのに役立つ「ハンドルモード」、または各プロセスが開いたDLL(DLLs)とメモリマップファイルを表示する「 DLLモード」で使用できます。

これにより、コンピューターで実行されているアプリケーションのトラブルシューティングやデバッグを行うときに、ProcessExplorerが非常に役立ちます(Process Explorer)

これらの無料のSysInternalsユーティリティのそれぞれが何に使用されるかがわかったので、自分のWindows10PC(Windows 10)でこれらのそれぞれをどのように使用できるかを詳しく見ていきましょう。

プロセスモニターの使用方法

プロセスモニター(Process Monitor)ファイルを抽出すると、ユーティリティを起動するためのさまざまなファイルが表示されます。64ビットWindowsシステムを実行している場合は、 Procmon64.exeという名前のファイルを選択します。そうでない場合は、Procmon.exeファイルを選択します。

メインのProcessMonitorウィンドウから、 (Process Monitor)ProcessExplorerアプリに似たビューを起動できます。これはプロセスツリービューです。これを表示するには、樹形図の画像が表示された小さなドキュメントアイコンを選択するだけです。

このビューに表示される情報には、親プロセスとそれが起動したすべてのプロセスが含まれます。起動コマンド、アプリ開発者(利用可能な場合)、実行時間、起動日を確認できます。 

Process Explorerほど有益ではありませんが、同じ情報の多くをすばやく表示するのに便利です。

プロセスモニターフィルターを作成する(Create a Process Monitor Filter)

メイン画面(プロセスイベントウィンドウ)に戻り、いずれかのプロセスを右クリックし、[フィルターの編集(Edit Filter)]を選択してプロセスフィルターを更新します。

このウィンドウには、 ProcessMonitor(Process Monitor)でフィルタリングがどのように機能するかが表示されます。最初のドロップダウンでは、フィルターのオブジェクトを選択できます。この場合、それはプロセス名(Process Name)です。次のドロップダウンは、is、is not、less thanなどの演算子です。このフィールドでは、フィルターを入力または選択し、それらのエントリを含める(Include)除外するかを指定できます。(Exclude)

[追加](Add)を選択すると、その新しいフィルターがリストに追加され、それに応じてプロセスの全体的なビューが変更されます。

新しいフィルターを作成するには、[フィルター(Filter)]メニューを選択し、[フィルター(Filter)]を選択します。 

これにより、同じウィンドウが開きますが、フィルターは空白になります。各ドロップダウンを選択し、除外または含めるフィルターアイテムを入力して、フィルターリストに追加するだけです (Just)

[ OK ]を選択すると、メインビューが更新され、新しいフィルターが含まれます。

Process Monitorの最も便利な機能は、アクション中にシステムイベントをログに記録することです。次のようにシステムイベントをログに記録できます。

  1. (Press)虫眼鏡のキャプチャアイコンを(Capture)押して、ログを停止します。
  2. ログをクリアするには、紙の消しゴムのクリアアイコンを選択します。
  3. (Press)キャプチャ(Capture)アイコンをもう一度押して、ログを開始します。
  4. [フィルター](Filter)を選択し、[高度な出力(Enable Advanced Output)を有効にする]を選択します。
  5. 問題を再現します。
  6. ロギングを停止するには、キャプチャ(Capture)アイコンをもう一度選択します。
  7. ディスクの保存(Save)アイコンを選択して、ログをコンピューターに保存します。

ログを確認して、トラブルシューティングしようとしている問題またはエラーを再作成したときに発生したすべてのプロセスイベントを確認できます。

イベントでより深く探求する(Exploring Deeper with Events)

プロセスモニター(Process Monitor)で特定のイベントを選択すると、[イベント(Event)]メニューから詳細を確認できます。

調べたいイベントを選択します。次に、[イベント(Event)]メニューを選択し、[プロパティ(Properties)]を選択します。

これにより、イベントのすべてのプロパティが表示されます。[イベント(Event)]タブには、主にメインの[プロセスモニター(Process Monitor)]ウィンドウに表示されていたものが表示されます。[プロセス(Process)]タブには、アプリケーションへのパスや起動コマンドライン、プロセスで使用されるモジュールなどが表示されます。[スタック(Stack)]タブには、プロセスとその詳細によってメモリに保存されているモジュールが表示されます。

代わりに、[イベント]メニューの[スタック(Stack)]を選択すると、[スタック(Stack)]タブだけにアクセスできます。

単一のイベントを注意深く監視したい場合は、それを選択してから[イベント(Event)]メニューを選択し、[ブックマークの切り替え(Toggle Bookmark)]を選択します。

これによりイベントが強調表示されるため、追跡が容易になります。

[イベント(Event)]メニューを選択して[ジャンプ]を選択すると、任意のプロセスの(Jump To)レジストリ(Registry)エントリを表示することもできます。 

これは、そのアプリケーションを構成するために切り替えることができるレジストリエントリをすばやく確認する方法です。 

ツールバーの右側に、デフォルトのフィルターを微調整するために使用できる5つのアイコンが表示されます。

これらを使用して、次の各フィルターをオンまたはオフにすることができます。

  • レジストリアクティビティ
  • ファイルシステムアクティビティ
  • ネットワーク活動
  • プロセスとスレッドのアクティビティ
  • プロファイリングイベント

ProcessExplorerの使用方法

Process Explorer(Explorer)を起動するときは、32ビットまたは64ビットに対して同じアプローチを使用します。

[表示(View)]メニューでは、各ペインに表示されるプロセス情報をカスタマイズできます。

下部ペインビュー(Lower Pane View)を使用して、そこに表示されるデータをハンドル(Handles)からDLL(DLLs)に変更します。

ここで最も重要なメニューはプロセス(Process)です。以下は、各メニューオプションが表示し、制御できるようにするものです。

Set Affinityは、選択したプロセスが実行できるCPU(CPUs)を示します。必要に応じて、任意のプロセッサを有効または無効にできます。

優先度の設定を使用すると、 (Set Priority)CPUがそのプロセスに与える優先度を上げるか個別にすることができます。これは、実行が遅れているアプリケーションや実行速度の遅いアプリケーションのトラブルシューティングを行って、実行中の他のプロセスが多すぎる場合の問題かどうかを確認するための良い方法です。

次の4つのオプションでは、各プロセスを制御できます。

これらには以下が含まれます:

  • プロセス(Kill Process)の強制終了:個々のプロセスを強制的に停止します
  • プロセスツリー(Kill Process Tree)を強制終了:プロセスとすべての子プロセスを強制的に停止します
  • 再起動(Restart):選択したプロセスを停止して開始します
  • 一時停止(Suspend):選択したプロセスを疑う

[プロセス(Process)]メニューを選択し、[ダンプの作成(Create Dump)]を選択すると、選択したプロセスに関連付けられたダンプファイルまたはミニダンプファイルを作成できます。次に、ミニダンプと(Minidump)フルダンプ(Full Dump)のどちらが必要かを選択します。

[プロセス(Process)]メニューで[ VirusTotal(Check VirusTotal)のチェック]を選択すると、 ProcessExplorerはプロセスと(VirusTotal.com)DLL(DLLs)に関連付けられたファイルのハッシュをVirusTotal.comに送信します(Process Explorer)VirusTotalは、それらをスキャンしてウイルス活動を分析します。この機能を使用する前に、 VirusTotal(VirusTotal)の利用規約に同意する必要があります。

最後に、[プロセス(Process)]メニューから[プロパティ(Properties)]を選択すると、選択したプロセスに関するさまざまなプロパティを表示できます。

これには、パフォーマンス、GPUの使用、合計スレッド、ネットワークアクティビティなどに関連する情報が含まれます。

ProcessMonitorまたはProcessExplorerを使用する必要がありますか?

これらの2つのユーティリティは似ていますが、同じではありません。プロセスがシステムとどのように相互作用しているかを追跡する必要がある場合は、プロセスモニター(Process Monitor)を使用することをお勧めします。各プロセスによってトリガーされるイベントを監視およびログに記録できます。

プロセスとシステム間の相互作用がエラーを引き起こしているのか、異常な動作をしているのかを確認するのに役立ちます。

一方、 Process Explorerは、プロセスに重点を置いています。親プロセスとその子プロセスの関係を確認するのに役立ちます。また、他の利用可能なWindows(Windows)ユーティリティよりもはるかに深く、各プロセスのパラメータとプロパティを深く掘り下げることができます。

具体的にトラブルシューティングする内容に応じて、必要なユーティリティを選択してください。



About the author

私は Windows 10 の技術者であり、長年にわたって個人や企業が新しいオペレーティング システムを活用できるよう支援してきました。外観をカスタマイズしたり、さまざまなユーザー向けにアプリケーションをパーソナライズする方法など、Microsoft Office に関する豊富な知識があります。さらに、Explorer アプリを使用して、コンピューター上のファイルやフォルダーを探索および検索する方法も知っています。



Related posts