linux釋放記憶體與檢視記憶體情況

2021-08-16 17:18:27 字數 927 閱讀 9580

linux釋放記憶體的命令:

sync

echo 1 > /proc/sys/vm/drop_caches

drop_caches的值可以是0-3之間的數字,代表不同的含義:

0:不釋放(系統預設值)

1:釋放頁快取

2:釋放dentries和inodes

3:釋放所有快取

free -m 檢視記憶體使用情況

注意:用free檢視到的是整個系統的,用top看到的是所有的程式.

top -d 1 

然後shift + m(按占用記憶體大小排序)

可以使用ps -aux|sort -k 4 -rn |head -10命令檢視,然後再kill

top命令監控某個程序的資源占有情況 下面是各種記憶體: 

virt:virtual memory usage

1、程序「需要的」虛擬記憶體大小,包括程序使用的庫、**、資料等

2、假如程序申請100m的記憶體,但實際只使用了10m,那麼它會增長100m,而不是實際的使用量

res:resident memory usage 常駐記憶體

1、程序當前使用的記憶體大小,但不包括swap out

2、包含其他程序的共享

3、如果申請100m的記憶體,實際使用10m,它只增長10m,與virt相反

4、關於庫占用記憶體的情況,它只統計載入的庫檔案所佔記憶體大小

shr:shared memory

1、除了自身程序的共享記憶體,也包括其他程序的共享記憶體

2、雖然程序只使用了幾個共享庫的函式,但它包含了整個共享庫的大小

3、計算某個程序所佔的物理記憶體大小公式:res – shr

4、swap out後,它將會降下來data1、資料占用的記憶體。如果top沒有顯示,按f鍵可以顯示出來。

2、真正的該程式要求的資料空間,是真正在執行中要使用的。

linux檢視和釋放swap記憶體

一 檢視swap記憶體被哪些程序占用 輸出單位是mbyte for i in cd proc ls grep 0 9 awk 0 100 do awk swap end proc i smaps done 2 1 sort k2nr head 二 如何釋放swap記憶體 法1,重啟占用swap的程序...

Linux釋放記憶體

首先,檢視 proc sys vm drop caches的值 root server test cat proc sys vm drop caches 0值預設為0 然後,執行sync命令 root server test sync 手動執行sync命令 描述 sync 命令執行 sync 子例程...

Linux釋放記憶體

linux伺服器執行一段時間後,由於其記憶體管理機制,會將暫時不用的記憶體轉為buff cache,這樣在程式使用到這一部分資料時,能夠很快的取出,從而提高系統的執行效率,所以這也正是linux記憶體管理中非常出色的一點,所以乍一看記憶體剩餘的非常少,但是在程式真正需要記憶體空間時,linux會將快...