free -mとps -eufの違い

free -mとps -eufの違い

Ubuntu 10.04および512Mb RAMを備えたvpsシステムがあります。 mongodbデーモンを実行した後、使用可能なメモリがどれくらいになるかを推測しようとしています。

走ればfree -m手に入る

             total       used       free     shared    buffers     cached
Mem:           496        489          6          0          4        452
-/+ buffers/cache:         33        462
Swap:          511          4        507

走ればps euf手に入る

USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root       948  0.0  0.0   5928   472 tty6     Ss+  Aug25   0:00 /sbin/getty 384
root       947  0.0  0.0   5928   472 tty5     Ss+  Aug25   0:00 /sbin/getty 384
root       946  0.0  0.0   5928   472 tty4     Ss+  Aug25   0:00 /sbin/getty 384
root       945  0.0  0.0   5928   472 tty3     Ss+  Aug25   0:00 /sbin/getty 384
root       944  0.0  0.0   5928   472 tty2     Ss+  Aug25   0:00 /sbin/getty 384
root       943  0.0  0.1  51856   536 hvc0     Ss   Aug25   0:00 /bin/login -- 
root       978  0.0  0.4  20580  2424 hvc0     S    Aug25   0:01  \_ -bash TERM=
root      7593  0.0  0.1  10332   524 hvc0     T    Aug25   0:00      \_ nano he
root     12576  0.7  3.1 122520 16220 hvc0     Sl   07:42   0:12      \_ ./mongo
root     12599  0.0  0.2  16300  1060 hvc0     R+   08:09   0:00      \_ ps euf

これはプロセスがメモリの5%未満を使用しているようですが、利用可能なメモリは6MBしかありません。なぜですか?

ベストアンサー1

バッファとキャッシュサイズは動的に調整されます。プロセスにさらに多くのスペースが必要な場合は、バッファとキャッシュからスペースを取得します。

重要なのは、2行目(「-/+ buffers / cache」)を調べることです。

Mem:           496        489          6          0          4        452
-/+ buffers/cache:         33        462

2行目のfree(462)は、6(free)、4(buffer)、452(cache)の合計です。これは実際の空き容量の量です。この値が低すぎると、システムはメモリ内のプロセスをスワップ空間にスワップし始めます。

実際には33MBのメモリを使用しています。書くことができる462MB - まだいくつかのI / Oバッファが必要なので、少し少ない場合があります。

おすすめ記事