linux 內存 cache的釋放

 由於LINUX的內核機制,通常狀況下不須要特地去釋放已經使用的cache。這些cache起來的內容能夠增長文件以及的讀寫速度。node

先說下free命令怎麼看內存linux

[root@yuyii proc]# freeweb

total used free shared buffers cached緩存

Mem: 515588 295452 220136 0 2060 64040yii

-/+ buffers/cache: 229352 286236ide

Swap: 682720 112 682608spa

其中第一行用全局角度描述系統使用的內存情況:blog

total——總物理內存內存

used——已使用內存,通常狀況這個值會比較大,由於這個值包括了cache+應用程序使用的內存get

free——徹底未被使用的內存

shared——應用程序共享內存

buffers——緩存,主要用於目錄方面,inode值等(ls大目錄可看到這個值增長)

cached——緩存,用於已打開的文件

note:

total=used+free

used=buffers+cached (maybe add shared also)

第二行描述應用程序的內存使用:

前個值表示-buffers/cache——應用程序使用的內存大小,used減去緩存值

後個值表示+buffers/cache——全部可供應用程序使用的內存大小,free加上緩存值

note:

-buffers/cache=used-buffers-cached

+buffers/cache=free+buffers+cached

第三行表示swap的使用:

used——已使用

free——未使用

cache釋放:

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

說明,釋放前最好sync一下,防止丟數據。

(原文連接:http://huagelinux.blog.163.com/blog/static/8733708320100773212754/

相關文章
相關標籤/搜索