free m記憶體使用詳解

2022-03-13 18:52:21 字數 1499 閱讀 4843

第一部分mem這行:

total -> 記憶體總數: 32014m=32g

used -> 已經使用的記憶體數: 7665m

free -> 空閒的記憶體數: 24349m

shared -> 當前已經廢棄不用,總是0

buffers buffer -> 快取記憶體數: 155m

cached page -> 快取記憶體數:4890m

關係:total(32014m) = used(7665m) + free(24349m)

第二部分(-/+ buffers/cache):

(-buffers/cache) used記憶體數:2619m (指的第一部分mem行中的used – buffers – cached)

(+buffers/cache) free記憶體數: 29395m (指的第一部分mem行中的free + buffers + cached)

可見,-buffers/cache反映的是被程式實實在在吃掉的記憶體,而+buffers/cache反映的是可以挪用的記憶體總數。

第三部分是指交換分割槽

其實我們可以從二個方面來解釋。

對作業系統來講是mem的引數。buffers/cached都是屬於被使用,所以它認為free只有24349m。

對應用程式來講是(-/+ buffers/cach)。buffers/cached 是等同可用的,因為buffer/cached是為了提高程式執行的效能,當程式使用記憶體時,buffer/cached會很快地被使用。

所以,以應用來看看,以(-/+ buffers/cache)的free和used為主。所以我們看這個就好了。另外告訴大家一些常識。linux為了提高磁碟和記憶體訪問效率, linux做了很多精心的設計, 除了對dentry進行快取(用於vfs,加速檔案路徑名到inode的轉換), 還採取了兩種主要cache方式:buffer cache和page cache。前者針對磁碟塊的讀寫,後者針對檔案inode的讀寫。這些cache能有效縮短了 i/o系統呼叫(比如read,write,getdents)的時間。

記住記憶體是拿來用的,不是拿來看的。不象windows,無論你的真實物理記憶體有多少,他都要拿硬碟交換檔案來讀。這也就是windows為什麼常常提示虛擬空間不足的原因。你們想想,多無聊,在記憶體還有大部分的時候,拿出一部分硬碟空間來充當記憶體。硬碟怎麼會快過記憶體.所以我們看linux,只要不用swap的交換空間,就不用擔心自己的記憶體太少。如果常常swap用很多,可能你就要考慮加物理記憶體了。這也是linux看記憶體是否夠用的標準哦。

第四部分釋放記憶體

手動釋放cache

# echo

3 > /proc/sys/vm/drop_caches

liunx 檢視記憶體 free m 詳解

在liunx物理機上想要檢視機器記憶體情況方法很多,比如 1.top 2.htop 3.free m 或則 free h 其中free命令是專門用來檢視記憶體,其中 m 顯示數字單位為 m h 則表示 顯示數字單位為 g,如下圖所示 其中 mem表示記憶體使用情況總覽 total 機器總記憶體量 u...

free m 檢視記憶體簡介

free m 檢視記憶體簡介 linux 記憶體簡介 我們在linux用free m 檢視linux記憶體使用情況。m 引數就是用 m顯示內容使用情況。這時回顯會出現幾個結果。mem 是 記憶體的使用情況總覽表。totel 機器總的物理記憶體 單位為 m used 用掉的記憶體。這裡是從系統的層面看...

Linux 下用 free m 檢視記憶體說明

我們在linux用free m 檢視linux記憶體使用情況。m 引數就是用 m顯示內容使用情況。這時回顯會出現幾個結果。mem 記憶體的使用情況總覽表。totel 機器總的物理記憶體 單位為 m used 用掉的記憶體。free 空閒的物理記憶體。注 物理記憶體 totel 系統看到的用掉的記憶體...