• 締切済み

Windowsのメモリ使用量が稼働プロセスと不一致

Windows で使用しているメモリ量をプロセスごとに把握する際に、 検算としてリソースモニタのメモリタブに表示されるプロセスのメモリ量を合計してみましたが、 その容量がリソースモニタで表示されている物理メモリの使用サイズと一致しません。 ■使用マシン  OS : Windows Server 2008 R2 Enterprise 64bit  物理メモリ容量 : 16 GB ■リソースモニタでの出力内容  物理メモリ使用量 : 11241 MB  リソースモニタに表示されるプロセスの全メモリ合計(ワーキングセット) : 8306 MB  リソースモニタに表示されるプロセスの全メモリ合計(コミット) : 9509 MB タスクマネージャや tasklist コマンドで表示されるプロセスのメモリを合計しても、 同様に「物理メモリ使用量」の値に届かないため、プロセス外の何らかのものが メモリを使用していると推測されますが、実際はどうなのでしょうか? (共有メモリなど特定のプロセスに属さないメモリ領域など??) また、そういうものがあった場合、そのメモリ使用量をどのように確認すればよいでしょうか?

みんなの回答

  • notnot
  • ベストアンサー率47% (4900/10359)
回答No.1

OSカーネルだと思います。OSカーネルはプロセスじゃ無いので。あとデバイスドライバ。 あと、全プロセスのワーキングセット合計を求めるときは、プロセス間で共有されている分を差し引く必要がありますが、これは十分な重複情報が得られないので無理ですね。

u_routine
質問者

補足

回答ありがとうございます。 答えていただいた内容をもとに調べてみたところ、Rammapツールというものを利用することでプロセス外メモリ容量がみられることがわかりました。 http://www.atmarkit.co.jp/fwin2k/win2ktips/1358rammap/rammap.html このツールによって以下のようなメモリ領域のサイズがわかりました。 Process Private Mapped File Shared Memory Page Table Paged Pool Nonpaged Pool Metafile System PTE (略) しかし、リソースモニタでいうところのワーキングセット容量がこれらの何を指しているのかは不明なままですが。 (各数値を足したり引いたりしてもいまいち容量が合わない。。) これより先は Microsoft のサポートに問い合わせないとわからないのでしょうかね。

関連するQ&A