!memusage

!memusage 拡張コマンドは、物理メモリの使用に関する概要統計を表示します。

構文

!memusage [Flags]

パラメーター

フラグ
次のいずれかの値を指定できます。 既定値は 0x0 です。

0x0
一般的な概要情報と、PFN データベース内のページの詳細な説明が表示されます。 この種類の出力の例については、「備考」セクションを参照してください。

0x1
PFN データベース内の変更された書き込み禁止ページに関する概要情報のみを表示します。

0x2
PFN データベース内の変更された書き込み禁止ページに関する詳細情報のみを表示します。

0x8
メモリ使用量に関する一般的な概要情報のみを表示します。

環境

モード: カーネルモードのみ

[DLL]

Kdexts.dll

追加情報

物理メモリ統計は、メモリ マネージャのページ フレーム番号 (PFN) データベース テーブルから収集されます。

このコマンドは、取得するデータの量が増えるため、特にターゲット コンピューターが 64 ビット モードで実行されている場合、実行に時間がかかります。 PFN データベースのロード中、カウンターはその進行状況を示します。 この読み込みを高速化するには、ネットワーク接続を使用するか、COM ポートの速度を向上させます。 CTRL+A (Toggle Baud Rate) キーを使用するか、 .キャッシュ (キャッシュ サイズの設定) コマンドを使用してキャッシュ サイズを増やします (おそらく約 10 MB まで)。

!memusage コマンドは実行中にも使用できます ローカルカーネルデバッグ.

この拡張機能からの出力の例を次に示します。

kd> !memusage
loading PFN database
loading (100% complete)
Compiling memory usage data (99% Complete).
             Zeroed:      218 (     872 kb)
               Free:      831 (    3324 kb)
            Standby:   124049 (  496196 kb)
           Modified:    55101 (  220404 kb)
    ModifiedNoWrite:       58 (     232 kb)
       Active/Valid:   321846 ( 1287384 kb)
         Transition:        8 (      32 kb)
         SLIST/Temp:     1533 (    6132 kb)
                Bad:        0 (       0 kb)
            Unknown:        0 (       0 kb)
              TOTAL:   503644 ( 2014576 kb)

Dangling Yes Commit:      184 (     736 kb)
 Dangling No Commit:    81706 (  326824 kb)
  Building kernel map
  Finished building kernel map
Scanning PFN database - (100% complete) 

...

レポートには、デバッガに表示されるメモリの使用量に関する詳細情報も含まれます。

  Usage Summary (in Kb):
Control       Valid Standby Dirty Shared Locked PageTables  name
ffffaf0fb369f010   204    956     0    32   204     0  mapped_file( shell32.dll )
ffffaf0fb369f270   492     60     0   252   492     0  mapped_file( KernelBase.dll )
ffffaf0fb36ad050    20     36     0     0    20     0  mapped_file( WMIsvc.dll )
ffffaf0fb36adad0    88    144     0    40    88     0  mapped_file( Can't read file name buffer at ffffc10e0497e170 )
ffffaf0fb36b5670   780   1012     0   560   780     0  mapped_file( KernelBase.dll )
ffffaf0fb36b5910    44    144     0    28    44     0  mapped_file( cfgmgr32.dll )
ffffaf0fb36bc270     8      0     0     0     8     0  mapped_file( Can't read file name buffer at ffffc10e061a17d0 )
ffffaf0fb36bc520    24     56     0     4    24     0  mapped_file( ShareHost.dll )

...

最初の列には、マップされた各構造を説明する制御領域構造のアドレスが表示されます。 これらの制御領域を表示するには、!ca 拡張コマンドを使用します。

備考

!vm 拡張コマンドを使用すると仮想メモリの使用状況を分析できます。 通常、この拡張機能は、 !memusage. メモリ管理の詳細については、次を参照してください。 Microsoft Windows Internals, パベル・ヨシフォヴィッチ、アンドレア・アリエヴィ、アレックス・イオネスク、マーク・ルシノヴィッチ、デヴィッド・ソロモン著。

!pfn 拡張コマンドを使用すると、PFN データベース内の特定のページ フレーム エントリを表示できます。

について !pool 拡張は、特定のプールの割り当てに関する情報、またはシステム全体のプールに関する情報を表示する。