ls -lR /
ただ楽しいので、Linuxシステムでメモリを「バッファ」するのに何が起こるのかを見たかったのです。予想通り価値が高まった。しかし、「アプリケーションメモリ」(例:「使用済み」 - (バッファ+キャッシュ))も増加し、命令が完了した後もダウンしないことがわかりました。
そのため、再起動し、できるだけ少ない数のアプリを実行してからもう一度テストしました(他のアプリがメモリを使用しているのに気づかなかった場合)。top -b -n 1
出力の前後を記録しました。
$ free -m
total used free shared buffers cached
Mem: 3879 413 3466 1 63 232
-/+ buffers/cache: 117 3762
Swap: 7059 0 7059
$ top -b -n 1
top - 19:33:36 up 11 min, 1 user, load average: 0,00, 0,02, 0,05
Tasks: 130 total, 1 running, 129 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0,3 us, 0,2 sy, 0,0 ni, 97,9 id, 1,5 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem: 3972908 total, 423356 used, 3549552 free, 65308 buffers
KiB Swap: 7229324 total, 0 used, 7229324 free. 238424 cached Mem
(process list omitted)
$ ls -lR /
(output omitted)
$ free -m
total used free shared buffers cached
Mem: 3879 1293 2586 1 315 252
-/+ buffers/cache: 725 3154
Swap: 7059 0 7059
$ top -b -n 1
top - 19:36:19 up 14 min, 1 user, load average: 0,33, 0,25, 0,13
Tasks: 130 total, 1 running, 129 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0,4 us, 2,2 sy, 0,0 ni, 95,5 id, 1,8 wa, 0,0 hi, 0,0 si, 0,0 st
KiB Mem: 3972908 total, 1324492 used, 2648416 free, 322580 buffers
KiB Swap: 7229324 total, 0 used, 7229324 free. 258976 cached Mem
(process list omitted)
のプロセスリストはまったく同じです(もちろん、列とTIME+
プロセスtop
自体に対するいくつかの変更は除く)。これは、プロセスが実際に追加の0.5GBのメモリを使用しないことを示します。だから私の質問は:このメモリを使うことは何であり、結局は解放されますか?そして、システムを長時間使用してファイルシステムに頻繁にアクセスしても同じ現象が発生しますか?