私は burst.net に 512M の VPS ボックスを持っていますが、スワップはありません。OS は Centos 6.x x64 です。
起動時には 58M の RAM しか使用されませんでした。
$ free -m:
total used free shared buffers cached
Mem: 512 58 454 0 0 0
-/+ buffers/cache: 58 454
Swap: 0 0 0
ここで、Java プログラム (Python で起動) を開始しましたfree -m
。
$ free -m
total used free shared buffers cached
Mem: 512 380 131 0 0 0
-/+ buffers/cache: 380 131
Swap: 0 0 0
ああ、(380-58=322M)のRAMを使用しました。
しかし、私がtop
:
top - 20:37:01 up 67 days, 3:19, 2 users, load average: 0.08, 0.04, 0.00
Tasks: 20 total, 2 running, 18 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.0%us, 0.3%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 524800k total, 388300k used, 136500k free, 0k buffers
Swap: 0k total, 0k used, 0k free, 0k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ DATA COMMAND
20288 freewind 17 0 936m 48m 11m S 0.0 9.4 0:02.07 799m java
20287 freewind 17 0 179m 10m 3404 S 0.0 2.1 0:00.08 7260 python
20200 root 15 0 91732 3940 2948 S 0.0 0.8 0:00.03 932 sshd
20145 root 15 0 91640 3832 2948 S 0.0 0.7 0:00.02 840 sshd
1474 root 18 0 80296 2312 696 S 0.0 0.4 4:06.86 1684 sendmail
java+python では48m+10m = 58M
RAM のみが使用されているようです。なぜfree -m
使用されていると表示されるのでしょうか322M
? 不足している RAM はどこにありますか?
答え1
あなたの場合、「free -m」は、バッファとキャッシュを含む合計RAM使用量のみを示しているようです(おそらくVPSを使用しているため)。これらは、実行中のプログラムによって消費されない余分なRAM使用量を占めることが多いです。LinuxがRAMを食い尽くしたページ?
答え2
top
各インスタンスまたはプロセスごとに詳細が表示されていますが、free
表示されません。
使用すると、free
何が実行されているかは正確にはわかりませんが、概要のみが表示されます。