プロセスエクスプローラー いくつかの機能の概要

Process Explorerは、標準のタスクマネージャーに代わるものです。 このユーティリティは、他の多くのSysinternalsユーティリティと同様に、システムの監視と制御の機能を大幅に拡張します。 リリースされたばかりの第14バージョンの主な革新は、プロセスのネットワークアクティビティを監視する機能です。 次に、このユーティリティの機能の簡単な概要を説明します。これは自分にとって最も役立つと思います。



参考のため。 2006年以来、SysinternalsはMicrosoftに買収され、この会社の重要人物であるMark Russinovichはその後Microsoftで働いています。 Markは彼のユーティリティ、Windows Internals book、 ブログで知られており、Windowsアーキテクチャのスペシャリストとして認められています。



内容:





メインウィンドウの列



1



2



プロセスごとに:

  1. プロセス名
  2. プロセスの所有者。このフィールドによるソートを使用して、ユーザープロセスが最初に進み、次にシステム
  3. プロセスごとのCPUローディング
  4. CPUによって費やされた合計時間。時々注意を払うのは興味深いです。タイミングに役立ちます。
  5. プライベートバイト-プロセスによって占有されているメモリの量(共有を除く実際に割り当てられたページ)
  6. プライベートバイトのピーク-プライベートバイトのピーク値。それが何に到達したかを見るのは時々興味深い
  7. I / O読み取りバイト-ディスクから読み取られたデータの合計量。変更によってアクティビティが表示されます
  8. I / O書き込みバイト-ディスクに書き込まれたデータの合計量。アクティビティは変更によって表示されます
  9. ネットワーク受信バイト-ネットワークから読み取られたデータの合計量。アクティビティは変更によって表示されます
  10. ネットワーク送信バイト-ネットワークに転送されたデータの合計量。アクティビティは変更によって表示されます
  11. プロセスの説明
  12. 会社名
  13. プロセスイメージへの完全なパス(ここで、プロセスが開始された場所を正確に理解できます)
  14. プロセス起動コマンドライン


svchost内のサービス



svchost(サービスをホストするプロセス)にカーソルを合わせると、サービスのリストが表示されます-これは非常に便利な機能です。



ScreenShot00243



合計アクティビティグラフ、最大アクティビティのプロセス



メインウィンドウの上部には、メモリ、ディスク、ネットワーク、CPUアクティビティなどの主要な要約パラメーターのグラフがあります。 パラメータの履歴の上にカーソルを移動すると、特定の瞬間にこの値に最大の貢献をしたプロセスが表示されます。 さらに、ツールチップには、パラメーターの瞬時値に関する情報があります(リフレッシュレートによって異なります)。 次の図は、ネットワークアクティビティのグラフを示しています。



ScreenShot00239



「システム情報」ウィンドウでは、グラフが一緒に収集されます。ここでパラメーターの相関関係を確認する方が便利です。



ScreenShot00262



トレイ内の合計アクティビティグラフ、最大アクティビティのプロセス



非常に便利な機能は、アクティビティ全体のグラフとともにトレイにアイコンを表示することです。 ディスクアクティビティ、CPU、およびメモリのグラフがある場合があります。 最初の2つを使用します。質問がある場合は、そこにカーソルを合わせて、どのプロセスがパラメーターに最大の貢献をするかを見つけます。 残念ながら、そこにネットワークアクティビティを配置することはできません。これが時間の問題であることを願っています。



ScreenShot00240ScreenShot00241



プロセスネットワーク接続



[TCP / IP]タブのプロセスプロパティで、現在アクティブな接続を確認できます。 残念ながら、それらのネットワークアクティビティは表示されません。この機能は別のユーティリティtcpviewで引き続き使用できます。



ScreenShot00254



プロセススレッド、そのアクティビティ、シンボルの読み込みを伴うストリームスタック



[スレッド]タブのプロセスのプロパティでは、すべてのスレッドとスレッドごとのCPU負荷を確認できます。 集中的に何かを行っているか、ハングしているスレッドのスタックを検討するとします。 これを行うには、まずCPUをロードするなどしてそれを認識する必要があります。その後、プロセスを一時停止してステータスを静かに確認すると便利です。これは、「サスペンド」ボタンをクリックしてこのウィンドウで直接実行できます 次に、ストリームを選択して「スタック」をクリックします。 ほとんどの場合、スタックはシステムの腸から始まり、理解できない方法で途切れます。 実際、システムライブラリのデバッグ情報がないと、スタックを正しく展開して把握することができません。 解決策があります-Microsoft Webサイトのシンボリック情報からのアクセスを構成する必要があります。 実行する手順はいくつかあります。



  1. デバッグツールをインストールします 。 リンクから、「Windows 32ビットバージョンのデバッグツール」または「Windows 64ビットバージョンのデバッグツール」のリンクに移動する必要があります。 次に、ダウンロードするSDKに統合されていない最新バージョンを選択します。そうしないと、SDKが大量にダウンロードされ、数Mbしかダウンロードされません。
  2. Process Explorerでキャラクターへのアクセスを設定します。 オプション->シンボルの構成。 1つのフィールドでは、手順1でインストールした製品の内部にあるdbghelp.dllへのパスを設定します。2つ目では、「srv * C:\ Symbols * http://msdl.microsoft.com/download/symbols」というトリッキーな行を設定します。 行の一部はPDBファイルのローカルキャッシュを指し、2番目の部分はダウンロード用のサーバーへのパスを指します。
  3. これで、スレッドとスタックのリストがより有益になります。 これらのウィンドウを開くと、MicrosoftサーバーからのPDBファイルのダウンロード中に遅延が発生する場合がありますが、これはモジュールのバージョンごとに1回実行され、結果は選択したフォルダーにキャッシュされます。


ScreenShot00255



ScreenShot00256



システムメモリ使用量情報



[システム情報]ウィンドウの[メモリ]タブ。 ここには、コミットと物理の2つのグラフがあります。 物理-ファイルキャッシュに関係なく物理メモリを使用するため、残っているものはすべて残されます。 コミット-使用された仮想メモリを含むプロセスに割り当てられるメモリの量。 [Commit Charge]セクションのグラフの下には、LimitフィールドとPeakフィールドがあります。 制限は、物理メモリと仮想メモリの合計、つまり これは、システムが割り当てることができるメモリの最大合計量です。 ピークは、ユーティリティの操作中のコミットグラフの最大値です。 システムの状態が使用可能なメモリの重要な制限にどのように近づいていたかを迅速に評価するには、「現在/制限」および「ピーク/制限」のパーセンテージが便利です。



ScreenShot00257



dllの処理と処理



メインウィンドウで、セパレータを有効にし、選択したプロセスのDLLまたはハンドルを下から表示できます。 ウイルスに対処してプログラムをデバッグする場合、これは非常に便利です。 この図は、オペラのハンドルのリストを示しています。ファイルシステムの最初のハンドルは、一時ディレクトリ内のフラッシュムービーです。



ScreenShot00258



DLLの場合、イメージへのフルパスを含む列を追加し、それでソートし、疑わしいモジュールがあるかどうかを分析できます。 この図は、Logitechのモジュールが接続されていることを示しています。これは、すべてのプロセスに導入されているフックのようなものである疑いがあります。 次の段落では、彼がまだ会う場所を確認します。



ScreenShot00259



検索ハンドルとdll



すべてのプロセスで名前ハンドルまたはDLLで検索します。 前の段落のLogitechからDLLの名前を入力し、ほぼどこでも接続することを確認します。



ScreenShot00260



別の例は、ファイルをブロックしているユーザーやフォルダーを操作しているユーザーを理解することです。 パスの一部を入力し、同様のシステムオブジェクトを発見したすべてのプロセスを見つけます。 リストから項目をクリックしてプロセスに進むと、対応するハンドルまたはDLLが強調表示されます。



ScreenShot00261



PS一部のフィールド(ネットワーク統計など)を表示するには、管理者権限が必要です。 [ファイル]メニューのコマンドを使用して、既に実行中のプロセスエクスプローラーで特権を増やすことができます。 そのような権限がある場合にのみ、そのような列を追加できます。 私はこの行動が間違っていると思う アプリケーションの潜在的な機能をユーザーから隠します。 フィールドが追加され、次の開始時に管理者権限がない場合、それらは空になります。 コマンドラインで「/ e」キーを指定して、Process Explorerの起動時に特権を強制的に昇格させることができます。




All Articles