linux 記憶體使用情況以及釋放

2021-09-12 09:10:29 字數 1664 閱讀 1178

mem 行(第一行)資料說明:      

total:1035108kb。表示物理記憶體總大小。

used:1008984kb。表示總計分配給快取(包含buffers 與cache )使用的數量,但其中可能部分快取並未實際使用。

free:26124kb。表示未被分配的記憶體。

shared:0kb。共享記憶體,一般系統不會用到。

buffers:124212kb。系統分配但未被使用的buffers 數量。

cached:413000kb。系統分配但未被使用的cache 數量。

-/+ buffers/cache 行(第二行)資料說明:      

used:471772kb,實際使用的buffers 與cache 總量,也是實際使用的記憶體總量。

free: 563336kb, 未被使用的buffers 與cache 和未被分配的記憶體之和,這就是系統當前實際可用記憶體。

根據以上分析,可以得出一下結論:

1.  實際可用記憶體大小:

free(-/+ buffers/cache行)= free(mem)+buffers(mem)+cached(mem);

563336 = 26124 + 124212+ 413000

2.  已經分配的記憶體大小:

used(mem) = used(-/+ buffers/cache)+ buffers(mem) + cached(mem)

1008984kb = 471772 + 124212 +413000

3.  物理記憶體總大小

total(mem) = used(-/+ buffers/cache) + free(-/+ buffers/cache)

1035108 = 471772 + 563336

/proc是乙個虛擬檔案系統,我們可以通過對它的讀寫操作做為與kernel實體間進行通訊的一種手段.也就是說可以通過修改/proc中的檔案,來對當前kernel的行為做出調整.那麼我們可以通過調整/proc/sys/vm/drop_caches來釋放記憶體.操作如下:

cat /proc/sys/vm/drop_caches

0

首先,/proc/sys/vm/drop_caches的值,預設為0

手動執行sync命令

描述:sync 命令執行 sync 子例程。如果必須停止系統,則執行 sync 命令以確保檔案系統的完整性。sync 命令將所有未寫的系統緩衝區寫到磁碟中,包含已修改的 i-node、已延遲的塊 i/o 和讀寫對映檔案。

sync

echo 3 > /proc/sys/vm/drop_caches

cat /proc/sys/vm/drop_caches

3

將/proc/sys/vm/drop_caches值設為3

再次執行free檢視記憶體已釋放完畢。

Linux 記憶體使用情況

linux系統如何檢視使用記憶體情況 root r2 free total used free shared buffers cached mem 215608 142680 72928 0 19736 86956 buffers cache 35988 179620 swap 1052248 0 ...

LINUX 記憶體使用情況

顯示結果如下 mem 表示物理記憶體統計 total 記憶體總數 8057964kb used 已使用的記憶體 7852484kb free 空閒的記憶體數 205480kb shared 當前已經廢棄不用,總是0 buffers buffer 快取記憶體數 290432kb cached page...

linux 檢視記憶體使用情況

第一部分mem行 total 記憶體總數 1002m used 已經使用的記憶體數 769m free 空閒的記憶體數 232m shared 當前已經廢棄不用,總是0 buffers buffer 快取記憶體數 62m cached page 快取記憶體數 421m 關係 total 1002m ...