GNU/Linux >> Linux の 問題 >  >> Linux

free の出力におけるバッファ/キャッシュ ラインの意味

解決策 1:

値の意味

最初の行の意味:

  • 09 :合計 (物理) RAM (カーネルが起動時に永続的に予約する小さなビットを除く);そのため、ca が表示されます。おそらくあなたが持っている 12 GiB ではなく、11.7 GiB です。
  • 13 :OS が使用中のメモリ
  • 22 :メモリは使用されていません。

30 =42 + 54

  • 61 / 71 / 89 :これは特定の目的でのメモリ使用量を示します。これらの値は 96 の値に含まれています .

2 行目は、調整された最初の行の値を示します。 101 の元の値を返します マイナス 合計 115 128 の元の値 プラス 合計 131 、したがってそのタイトル。これらの新しい値は、多くの場合、最初の行の値よりも意味があります。

最後の行 (147 ) は、スワップ領域の使用状況 (つまり、一時的にディスクに移動されたメモリの内容) に関する情報を提供します。

背景

数値が何を意味するのかを実際に理解するには、Linux の仮想メモリ (VM) サブシステムに関する背景知識が少し必要です。短いバージョン:Linux (最近のほとんどの OS と同様) は常に空き RAM をキャッシュに使用しようとするため、150 ほとんどの場合、非常に低くなります。したがって、行 168 が表示されます。これは、キャッシュを無視したときにどれだけのメモリが空いているかを示しているためです。メモリが不足すると、キャッシュは自動的に解放されるため、実際には問題になりません。

179 の場合、Linux システムのメモリが本当に不足しています。 183 の値 ラインが低くなります。

数字の意味の詳細については、例を参照してください。質問:

  • Linux で、free コマンドによって報告される「バッファ」と「キャッシュ」の違いは何ですか?
  • Red Hat Linux が実際に使用可能なシステムの空きメモリより少ないと報告するのはなぜですか?

procps 3.3.10 の変更

191 の出力に注意してください procps 3.3.10 (2014 年にリリース) で変更されました。レポートされる列は、"total"、"used"、"free"、"shared"、"buff/cache"、"available" になりました。 、主に Linux カーネルのスラブ キャッシュをより適切に説明するために、一部の値の意味が変更されました。

動機については、Debian バグ レポート #565518 を参照してください。 14.04 から 16.04 までの出力とはどういう意味ですか?詳細については

解決策 2:

2009年から現在受け入れられている回答は古くなっています。取得している情報が正しく、210 のバージョンと一致していることを確認することが重要です。 (Debian パッケージ 223 で配布) またはあなたのディストリビューションで同等のもの)。 232 の出力を見ることも役に立ちます。 、また 247 251 に関する情報を含む 、 266 のファイル Linux からデータを取得します。

デフォルトでは、277 マニュアルページでわかるように、出力はキビバイト (1 キビバイト =1024 バイト) 単位です。 286 を使用することを好みます 次のような接尾辞を示す引数:

$ free -h
              total        used        free      shared  buff/cache   available
Mem:           15Gi       6.1Gi       1.9Gi       301Mi       7.5Gi       8.8Gi
Swap:         979Mi          0B       979Mi

最初の行 298 意味:

  • 309 (Mem):搭載メモリの合計 (つまり 312 326 から )、これは RAM 内のすべてのメモリ
  • 336 (Mem):使用済みメモリ、348 に等しい
  • 350 (Mem):未使用のメモリ (つまり 369 )、これは RAM 内の何か (キャッシュも含む) に使用されていないすべてのメモリ
  • 375 (Mem):これは主に 388 で使用されるメモリの量です。 (391 )
  • 405 (Mem)、419 の合計 と 428 :
    • 436 :カーネル バッファが使用するメモリ (442 )、これはカーネルが利用できるメモリです
    • 454 :ページ キャッシュとスラブによって使用されるメモリ (464473 )。ページ キャッシュには、RAM にキャッシュされたファイル システム内のファイルの内容が含まれており、通常、これが高い数値であることは良いことです。 「スラブ」も同様のキャッシュ機能であると思います。
  • 484 (Mem):これは、スワップなしで新しいアプリケーションを開始するために使用できるメモリの推定量です。 491 でカウントされるほとんどのメモリが含まれます フィールド (新しいアプリケーションを開始するためにページ キャッシュを削除できるため) を使用しますが、スワップはカウントされません (通常、低速のスワップ領域を使用しないことが望ましいため)。

2 行目は 500 です .これが私の説明です:

  • 511 (スワップ):これは、スワップ用に予約されたディスク容量の合計です (527 530 で )。これが 540 の出力と一致することを確認することで確認できます .
  • 553 (スワップ):現在使用されているスワップディスク容量。繰り返しますが、これは 563 の出力と比較することで確認できます
  • 574 (Swap):現在使用されていないスワップ ディスク容量 (582 597 で )。 600 に等しい

Linux
  1. Linux – Linuxシステムでバッファとキャッシュを空にする方法は?

  2. 空きメモリの90%を埋める方法は?

  3. 同じ行に複数行の出力を印刷する方法は?

  1. POSIX とはどういう意味ですか?

  2. Linuxでメモリ消費をログに記録する方法は?

  3. Linux コマンド出力の最初の行を省略する

  1. キャッシュ ラインに合わせてキャッシュ ラインのサイズを知る

  2. Linux free はメモリ使用量が高いことを示していますが、top はそうではありません

  3. ps aux 出力の意味