1. 程式人生 > >linux內存釋放

linux內存釋放

oss -h 空閑 ech 應用程序 不同 shadow 總數 src

1.查看/proc/sys/vm/drop_caches的值
~]# cat /proc/sys/vm/drop_caches
0
2.運行sync命令
~]# sync
3.輸入手動釋放內存的命令
~]# echo 1 > /proc/sys/vm/drop_caches
drop_caches的值可以是0-3之間的數字,代表不同的含義:
0:不釋放(系統默認值)
1:釋放頁緩存
2:釋放dentries和inodes
3:釋放所有緩存
4.釋放完內存後改回去讓系統重新自動分配內存
~]# echo 0 >/proc/sys/vm/drop_caches
看內存是否已經釋放掉了。
~]# free -h
技術分享圖片
第一行用全局角度描述系統使用的內存狀況:
total 內存總數
used 已經使用的內存數,一般情況這個值會比較大,因為這個值包括了cache 應用程序使用的內存
free 空閑的內存數
shared 多個進程共享的內存總額
buffers 緩存,主要用於目錄方面,inode值等(ls大目錄可看到這個值增加)
cached 緩存,用於已打開的文件

第二行描述應用程序的內存使用:
-buffers/cache 的內存數:used - buffers - cached
buffers/cache 的內存數:free buffers cached
前個值表示-buffers/cache 應用程序使用的內存大小,used減去緩存值
後個值表示 buffers/cache 所有可供應用程序使用的內存大小,free加上緩存值

第三行表示swap的使用:
used 已使用
free 未使用 

linux內存釋放