2.-/+ buffers/cache 解析
3.swap 解析
free是乙個可以為我們提供linux機器可用ram(記憶體)很有價值的乙個常用命令,很多linux新手或者運維人員會誤解它,讓我們一起來揭開它的神秘面紗吧!
free的輸出結果如下,預設表示這些數字都是以kb為單位的,如果想輸出可讀的可以加上-h 、-m等引數
[dev@dc-dev-datanode-01 ~]$ free
total used free shared buffers cached
mem: 16467080 10999040 5468040 544 231280 646008
-/+ buffers/cache: 10121752 6345328
swap: 0 0 0
1.mem 解析
對應的數值
引數名稱
含義16467080
total
當前機器總共可用的記憶體數,由於使用了-m 引數,所以該數值是以mb為單位
10999040
used
已經被使用的記憶體,包含buffers和cached
5468040
free
空餘的記憶體
544shared
表示多個程序共享記憶體
231280
buffers
在linux系統中為不同應用緩衝資料所使用的記憶體數
646008
cached
為將來快速訪問為目的而快取資料使用的空間
buffers 與cached的區別?
buffers:是儲存特定應用程式資料的臨時位置,任何其他應用程式都不會使用此資料。類似於頻寬,當您嘗試通過2.-/+ buffers/cache 解析網路傳送大量資料時,如果您得頻寬很小,只能傳送很少的資料時,系統會將這些還未傳送的資料儲存在buffer裡面,
以便可以以較低的速度不斷的傳送資料。
cached:是儲存常用的資料以便更快訪問的位置。不同點:cache裡面的資料可以多次使用,而buffer是一次性的。相同點:兩者都是臨時儲存,用於資料處理。
對應的數值
引數名稱
含義10121752
- buffers/cache
真實被系統或應用程式所使用的記憶體,計算公式:used - (buffers + cache),10999040 - 231280 - 646008= 10121752
6345328
+ buffers/cache
真實可以使用的記憶體,計算公式:total - (上面真實被使用掉的記憶體),16467080- 10121752 = 6345328
tips:3.swap 解析1.為什麼在mem:那一行中的used 顯示的是10999040呢?是因為linux 把cached 和buffered 記憶體也統計到裡面去了,當時將來如果任何應用程式想使用記憶體,linux將為您釋放掉cached和buffered。
2.不要抱怨linux占用了您太多的記憶體,這是誤解free 這個老鐵了,如果有人問您現在伺服器可用的記憶體是多少時,您應該說6345328 kb而不是第一行的10999040 kb。
swap 行標識交換詳細資訊,如swap的總大小,已經使用的swap大小和空閒的swap空間,swap是在磁碟上建立的虛擬記憶體,可虛擬增加記憶體大小。
Linux free命令詳解
free命令統計出來的記憶體非常具有迷惑性,現在總結如下 第一部分mem行 total 記憶體總數 7863m userd 已經使用的記憶體使用總數 7039m free 剩餘的記憶體總數 823m share 當前已經廢棄不用的記憶體總數 0 buffers 當前被使用的快取大小 583m cac...
linux free命令詳解
free m total used free shared buffers cached mem 1002 769 232 0 62 421 buffers cache 286 715 swap 1153 0 1153 第一部分mem行 total 記憶體總數 1002m used 已經使用的記憶體...
Linux free命令解釋
free 是linux 檢視作業系統整體記憶體使用情況的最常用的命令。但是free命令中的具體field代表哪些含義,這些field之間的具體關係是什麼。恐怕還是有部分同學不太清楚。預設的單位是kbyte。ansen localhost free total used free shared buf...