linux:/etc/rc.d # vmstat
procs -----------memory---------- ---swap-- -----io---- -system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 4205280 14880 2598540 0 0 0 12 11 12 0 1 98 1 0
这个cache是系统从物理内存分配一块,用来做文件系统的读缓冲,按照Linux的说明在系统内存紧张时,这个内存是会自动释放的。手工释放caches的方法:
sync;echo 3>/proc/sys/vm/drop_caches
Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free.
To free pagecache:
* echo 1 > /proc/sys/vm/drop_caches
To free dentries and inodes:
* echo 2 > /proc/sys/vm/drop_caches
To free pagecache, dentries and inodes:
* echo 3 > /proc/sys/vm/drop_caches
As this is a non-destructive operation, and dirty objects are notfreeable, the user should run "sync" first in order to make sure allcached objects are freed.
This tunable was added in 2.6.16.
本文详细解析Linux vmstat命令的输出含义,并介绍了如何手动释放系统缓存,包括文件读缓冲缓存和内存缓存的释放方法。
1572

被折叠的 条评论
为什么被折叠?



