Windows 7タスクマネージャーのこれらの異なる種類のメモリ使用量は何ですか?


17

Windows 7のタスクマネージャーでは、表示するさまざまな列を選択できます。メモリとメモリ使用量に関連する束がありますが、それが何を意味するのかわかりません。

オランダ語版のWindowsをインストールしているので、翻訳を試みます。英語名がわからないので。

メモリ列

順番に:

  • ワーキングセット
  • ピークワーキングセット
  • プライベートワーキングセット
  • コミットチャージ
  • ページプール
  • 非ページプール

4
人々がそれらを読む可能性は低いですが、おそらくMarkの優れた一連の記事をリンクする必要があります。blogs.technet.com/b/markrussinovich/archive/2008/07/21/...
surfasb

1
プロセスのタスクマネージャの測定値は、ここの表5.5にあります
タマラWijsman

回答:


15

ワーキングセットとは何ですか?

ワーキングセットは、物理メモリに常駐する仮想ページのサブセットです。

Windowsには複数の種類のワーキングセットがあります。

  • プロセスワーキングセットには、単一プロセス内のスレッドによって参照されるページが含まれます。

  • システムワーキングセットには、ページプールとシステムキャッシュの間に、ページング可能なシステムコードの常駐サブセット(主にカーネルとロードされたドライバーが含まれます)が含まれます。

  • Windowsサブシステム、セッションページプール、セッションマップビュー、およびその他のセッションドライバーによって割り当てられたカーネルモードセッション固有データの常駐サブセットを含むセッションワーキングセット。

基本的に、ワーキングセットを使用して、大量のページングを回避するために使用できる物理メモリの量を決定します。ときにページフォルトが発生し、作業セットとシステムの空きメモリの量の制限を検討しています。必要に応じて、メモリマネージャは、プロセスをそのワーキングセットの最大値まで成長させることができます。メモリが不足している場合、ページフォールトが発生すると、Windowsはワーキングセットのページを置き換えます。

Windowsは、変更されたページをディスクに書き込むことにより、メモリを使用可能にしようとします。メモリが不足すると、ワーキングセットマネージャーはほとんどのワーキングセットをトリミングして、システムで使用可能な物理RAMメモリの量を増やします。ページ数が多いプロセスほど、見られる傾向が高くなります。

プロセスのデフォルトのワーキングセットは、最小50ページで構成され、最大345ページです。制限は変更できますが、ほとんどのユースケースではデフォルトで十分です。また、最大ワーキングセットサイズは、ブート時に計算されるシステム全体の最大値を超えることはできません。

Windowsは、プロセスの仮想ワーキングセットページで使用される物理RAMの合計、ピーク、およびプライベート量を報告します。プライベートは、プロセス間で共有されないメモリを示します。

コミットチャージとは何ですか?

プロセスの仮想アドレス空間内のページは、無料、予約済み、またはコミット済みです。アプリケーションはアドレス空間を予約してからコミットできます。それ自体を予約することは、メモリまたはページファイルスペースを取りません。それは、主にページコミットメントを延期することによってメモリを減らすために行われます。

コミットされたページは、アクセスされると最終的に物理メモリ内の有効なページに変換されるページです。これらはプライベートで共有可能であるか、セクションのビューにマップされます。セクションは、共有メモリまたはマップファイルのいずれかです。そのため、コミットされたページがマップされたファイルの一部にマップされている場合、アクセス時にディスクからそれらを取り込む必要があります。

最も一般的な既知のマップファイルは、ページファイルです。いくつかのプロセスでまだ使用されているが、ディスクに書き込む必要がある変更されたページを保存します。これをより積極的に行うことにより、その前にI / O書き込みを行うことなく、メモリをより簡単に空にすることができます。

メモリマネージャーは、グローバルベースで、ページファイルクォータとしてプロセスごとにプライベートコミットの請求を追跡します。次に、これらの値を使用して、ページファイルに書き込む頻度を決定します。メモリの解放は、ワーキングセットメカニズムによって行われることに注意してください...

何かがメモリになくなると、ページファイルから読み込まれます。

Windows は、バッキングストアがないプロセスが使用するメモリの合計としてコミットチャージを報告します。基本的に、ページファイルにまだ存在しない物理RAMの量を合計し、そこから他のマップされたファイルを減算します。

バッキングストアは、データのバックアップがあるストレージです。たとえば、イメージをメモリにマップする場合、イメージはメモリとディスクの両方にあります。したがって、高メモリ状態で必要なときにいつでもディスクからアクセスできるので、そのイメージをメモリ使用量として計算する意味はありません。

メモリヒープとは何ですか?

ページプールおよび非ページプールとして知られています...

カーネルのシステムスレッドには、プロセスのようなアドレススペースがありません。したがって、オペレーティングシステムのメモリヒープ動的ストレージを割り当てる必要があります。これは、ページプールまたは非ページプールによって主に形成されます。

ページプールは、システムの内外にページングできる仮想メモリで構成されています。低ディスパッチレベル(より高い優先度)でメモリにアクセスする必要のないデバイスドライバーは、ページプールを自由に使用できます。

非ページプールは、常に物理メモリに常駐することが保証されているため、ページフォールトを発生させることなくいつでもアクセスできる仮想メモリで構成されています。下位のディスパッチレベルでメモリにアクセスする必要があるデバイスドライバーは、非ページプールを使用して、その時点でI / O呼び出しが利用できないため、データにアクセスできるようにする必要があります。

これらのプールには最小サイズと最大サイズがあり、使用可能なRAMのわずかな割合であると判断されます。成長する可能性はありますが、使用可能なRAMの一定の割合を超えないことに注意してください。非ページプールは、より重要なメモリ専用であるため、非常に強固ですが、ページプールはページファイルに拡張されます。

これは、ユーザーがページファイルを無効にした場合に最もよく見られる問題の1つです。ページファイルを無効にしている場合は、確認する価値がある他の安定性パフォーマンスの問題があります。

ソース:理解しやすいテキストに書き換えられたWindows Internalsブックからの抜粋。



8

英語の翻訳は、ワーキングセット、ピークワーキングセット、ワーキングセットデルタ、プライベートワーキングセット、コミットサイズ、ページプール、および非ページプールです。これは大体それらが意味するものです:

ワーキングセット:このプロセス(および場合によっては他のプロセス)によって常駐およびマップされる物理RAMの量。

ピークワーキングセット:このプロセスがこれまでに常駐していた中で最も物理的なRAM。

ワーキングセットデルタ:最後の更新以降のワーキングセットの変更

プライベートワーキングセット:このプロセス専用にマップされた物理RAMの量。

commit charge:このプロセスが使用している仮想メモリのうち、ページファイルでバックアップする必要がある可能性のあるメモリの量 これは理解するのが難しいものですが、基本的には、プロセスがマップしたメモリのすべてのバイトにアクセスまたは変更した場合、追加のRAMまたはページファイルが必要になる量です。

ページプール:このプロセスが担当するシステムの通常のメモリプール(必要に応じてページアウトできる)の使用量。

非ページプール:ページングできないこのプロセスがロックした物理メモリの量。通常、これは非同期I / Oなどのシステムオブジェクトに使用されます。(このメモリは、システムの非ページプールに対してカウントされます。)


これは本当に明確で簡潔であり、このページから少しだけ意味があります:blogs.microsoft.co.il/sasha/2016/01/05/…。しかし、この情報のリファレンスを引用してください。
goamn
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.