!vm

!vm 拡張モジュールは、ターゲットシステム上の仮想メモリ使用統計情報の概要を表示します。

!vm [Flags]

パラメーター

フラグ
このコマンドの出力に表示される情報を指定します。 これは、以下のビットの任意の合計である。 デフォルトは 0 で、各プロセスのメモリ統計だけでなく、システム全体の仮想メモリ統計も表示される。

ビット0 (0x1)
プロセス固有の統計情報を省略して表示する。

ビット 1 (0x2)
メモリ管理スレッドスタックを含めて表示する。

ビット 2 (0x4)
ターミナルサーバーのメモリ使用量を表示します。

ビット 3 (0x8)
ページファイルの書き込みログを表示します。

ビット 4 (0x10)
作業セットオーナースレッドスタックを表示。

ビット 5 (0x20)
(Windows Vista 以降)カーネル仮想アドレスの使用状況を表示します。

環境

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

[DLL]

Kdexts.dll

追加情報

!memusage拡張コマンドを使用すると、物理メモリの使用状況を分析できる。 メモリ管理の詳細については、Mark RussinovichとDavid Solomon著のMicrosoft Windows Internalsを参照してください。

解説

以下は、Flagsが1のときに出力される短い出力の例です:

kd> !vm 1

*** Virtual Memory Usage ***
      Physical Memory:     16270   (   65080 Kb)
      Page File: \??\E:\pagefile.sys
         Current:     98304Kb Free Space:     61044Kb
 Minimum:     98304Kb Maximum:       196608Kb
      Available Pages:      5543   (   22172 Kb)
      ResAvail Pages:       6759   (   27036 Kb)
      Locked IO Pages:       112   (     448 Kb)
 Free System PTEs:    45089   (  180356 Kb)
      Free NP PTEs:         5145   (   20580 Kb)
      Free Special NP:       336   (    1344 Kb)
      Modified Pages:        714   (    2856 Kb)
      NonPagedPool Usage:    877   (    3508 Kb)
      NonPagedPool Max:     6252   (   25008 Kb)
      PagedPool 0 Usage:     729   (    2916 Kb)
      PagedPool 1 Usage:     432   (    1728 Kb)
      PagedPool 2 Usage:     436   (    1744 Kb)
      PagedPool Usage:      1597   (    6388 Kb)
      PagedPool Maximum:   13312   (   53248 Kb)
      Shared Commit:        1097   (    4388 Kb)
      Special Pool:          229   (     916 Kb)
      Shared Process:       1956   (    7824 Kb)
      PagedPool Commit:     1597   (    6388 Kb)
      Driver Commit:         828   (    3312 Kb)
      Committed pages:     21949   (   87796 Kb)
      Commit limit:        36256   (  145024 Kb)

すべてのメモリ使用量がページ単位とキロバイト単位で表示されます。 この表示で最も有用な情報は以下のものです:

パラメーター 意味
物理メモリ システム内の総物理メモリ。
利用可能なページ 仮想および物理の両方で、システムで利用可能なメモリのページ数。
非ページプールの使用量 非ページプールに割り当てられたページの量。 非ページ・プールはページング・ファイルにスワップアウトできないメモリなので、常に物理メモリを占有する必要があります。 この数値が大きすぎる場合、通常はシステムのどこかにメモリリークがあることを示しています。