Linux記憶體資訊檢視 free命令

2022-04-10 22:32:30 字數 3338 閱讀 4530

free 命令可以顯示系統已用和空閒的記憶體情況。包括物理記憶體、互動區記憶體(swap)和核心緩衝區記憶體(buffer)。共享記憶體將被忽略。在linux系統監控的工具中,free命令是最經常使用的命令之一。

free [option] 

-b  # 以byte為單位顯示記憶體使用情況

-k  # 以kb為單位顯示記憶體使用情況

-m  # 以mb為單位顯示記憶體使用情況

-g # 以gb為單位顯示記憶體使用情況

-h # 自動轉換單位(最常用)

-o  # 不顯示緩衝區調節列

-s 《間隔秒數》  # 持續觀察記憶體使用狀況

-t  # 顯示記憶體總和列

-v  # 顯示版本資訊

在終端輸入free。結果如下:

[@bjzw_106_203 ~]# free

total used

free

shared buffers cached

mem:

8182340

7909480

272860

0463820

5228244

-/+ buffers/cache: 2217416

5964924

swap:

1048568

2612

1045956

mem :表示物理記憶體的統計(系統已使用、空閒的記憶體)。

-/+ buffers/cache:應用程式已使用的、空閒的物理記憶體。

swap:交換分割槽的記憶體統計。

total:表示物理記憶體總量(total = used + free)

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

free:未被分配的記憶體。

shared:多個程序共享的記憶體總額。

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

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

強調一下buffers和cached的區別:

對於應用程式來說:buffers/cached 是等於可用的,因為buffer/cached是為了提高檔案讀取的效能,當應用程式需在用到記憶體的時候,buffer/cached會很快地被**。可用記憶體=系統free memory+buffers+cached。

buffers:是指用來給塊裝置做的緩衝大小,他只記錄檔案系統的metadata以及 tracking in-flight pages。也就是說,buffers是用來儲存,目錄裡面有什麼內容,許可權等等。

cached:直接用來記憶我們開啟的檔案,是用來給檔案做緩衝的。

綜上所述,

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

對應用程式來講是:(-/+ buffers/cach).buffers/cached 是等同可用的,因為buffer/cached是為了提高程式執行的效能,當程式使用記憶體時,buffer/cached會很快地被使用。以應用來看,以(-/+ buffers/cache)的free和used為主.所以我們看這個就好了。

當可用記憶體少於額定值的時候,就會開會進行交換。額定值被定義在/proc/meminfo 這個檔案。

[@bjzw_106_203 ~]# cat /proc/meminfo

memtotal:

8182340

kbmemfree:

346672

kbbuffers:

463956

kbcached:

5156992

kbswapcached: 0kb

active:

3027644

kbinactive:

4170020

kbhightotal: 0kb

highfree: 0kb

lowtotal:

8182340

kblowfree:

346672

kbswaptotal:

1048568

kbswapfree:

1045956

kbdirty:

48kb

writeback: 0kb

anonpages:

1576704

kb23552

kbslab:

422056

kbpagetables:

164404

kbnfs_unstable: 0kb

bounce: 0kb

commitlimit:

5139736

kbcommitted_as:

5433220

kbvmalloctotal:

34359738367

kbvmallocused:

1260

kbvmallocchunk:

34359720023

kbhugepages_total:

0hugepages_free:

0hugepages_rsvd:

0hugepagesize:

2048 kb

交換將通過三個途徑來減少系統中使用的物理頁面的個數:

(1) 減少緩衝與頁面cache的大小;

(2) 將系統v型別的記憶體頁面交換出去; 

少量地使用swap是不會影響到系統效能的。

追蹤linux系統的記憶體使用一直是個難題,很多人試著把能想到的各種記憶體消耗都加在一起,kernel text、kernel modules、buffer、cache、slab、page table、process rss…等等,卻總是與物理記憶體的大小對不上,這是為什麼呢?因為linux kernel並沒有滴水不漏地統計所有的記憶體分配,kernel動態分配的記憶體中就有一部分沒有計入/proc/meminfo中。

linux記憶體檢視free

linux記憶體檢視 free 命令 自 http blog.sina.com.cn u 4a200e2b0100060d 在linux下檢視記憶體我們一般用command free root nonamelinux free total used free shared buffers cache...

Linux檢視記憶體命令 free

from free命令可以顯示linux系統中空閒的 已用的物理記憶體及swap記憶體,及被核心使用的buffer。在linux系統監控的工具中,free命令是最經常使用的命令之一。1 命令格式 free 引數 2 命令功能 free 命令顯示系統使用和空閒的記憶體情況,包括物理記憶體 互動區記憶體...

linux的記憶體檢視命令 free

我們一般用free命令 root scs 2 tmp free total used free shared buffers cached mem 3266180 3250004 16176 0 110652 2668236 buffers cache 471116 2795064 swap 204...