バッファキャッシュと空きメモリ

バッファキャッシュと空きメモリ

以下は Ubuntu での free の出力です。

$ free
             total       used       free     shared    buffers     cached
Mem:       8173180    8013092     160088          0    1076276    3091136
-/+ buffers/cache:    3845680    4327500
Swap:     11719380        312   11719068

物理メモリの合計は 8 GB です。使用されているメモリの合計もそれに近いですが、バッファ キャッシュによって使用されているメモリの合計はその半分の約 4 GB です。スワップとして使用されているメモリはほとんどありません。

バッファ キャッシュは、ディスクへの読み取り/書き込みが行われた後、読み取り/書き込みを高速化する必要がなくなるまでアプリケーションがメモリにロードされるため、生成されます。したがって、ディスク バッファリングの読み取り/書き込みの合計は 4 GB です。

わかりました。しかし、残りの 4 GB の物理メモリ (バッファ キャッシュを除く) を使用しているプロセスの種類は何ですか? それをどのように判断できますか?

答え1

残りのメモリは、システムで実行されているさまざまなプログラムのヒープとスタックに使用されています。Joel Davis がコメントで述べたように、gnome-system-monitorまたはps(rssではなく を使用することをお勧めします) を使用して、どのプログラムがそれを使用しているかを確認できます。また、デフォルトで CPU 使用量で並べ替えるコマンドライン ツールをvsize使用することもできます。と入力すると、メモリ使用量による並べ替えに切り替わります。topM

また、誤解を正しておきたいのですが、スワップは使用メモリ。312 は、312KB の RAM がスワップに使用されているという意味ではありません。実際には、312KB のスワップが RAM の代わりに使用されていることを意味します。マシンの RAM が不足すると、メモリの内容をディスクに書き出し (「ページング」)、その RAM を解放します。このスワップの数値は、ディスクに書き込まれた RAM の量を示しています。

関連情報