iT邦幫忙

DAY 14
5

Linux系統效能調教系列 第 14

Linux系統效能分析與探討 - [14] Kernel buddy system 的內容

Kernel buddy system 的內容: /proc/buddyinfo紀錄的就是Linux kernel的記憶體管理機制 - buddy system的內容。
昨天談到的slab是Linux的記憶體管理機制之一,從slab中可獲得的kernl中所執行的process使用的記憶體的資訊。另一個可以檢視kernel管理記憶體內容的工具是**/proc/buddyinfo**中的內容。

/proc/buddyinfo紀錄的就是Linux kernel的記憶體管理機制 - buddy system的內容。Linux kernel透過buddy system來對free page進行管理,page是kernel記憶體使用的基本單位。當系統需要一塊page時,會透過buddy system提取,而buddy的管理機制會儘可能地維持記憶體的連續性,以減少fragmentation的情形發生。buddy system管理記憶體的方式是將連續的page指定為一個chunk,而且chunk的大小是以2的次方依序分割。也就是1k, 2k, 4k, 8k, 16k, 32k,... 以此類推。當kernel需要一塊空間時,他會從最小且足夠的chunk中去要一塊。若是不夠,則轉向下一個chunk去要,而且盡可能把切剩餘的空間加到同等級的chunk中,藉此減少用不到的浪費(fragmentation)。譬如說,需要16k,但是16k的chunk沒有剩餘的了,所以就向32k的chunk去要,而切剩的另外16k則計算到16k的chunk中。在**/proc/buddyinfo中就是記錄這些chunk的使用情形,依序顯示每個不同大小的chunk**還有多少個可用空間。

cat /proc/buddyinfo 
Node 0, zone      DMA      5      3      5      2      3      2      1      1      2      2      1 
Node 0, zone   Normal      0      1      5      0      1      1      1      1      1      0    108 
Node 0, zone  HighMem    320    259    147     59     16     11      6      3      1      1    684 

/proc/buddyinfo中將實體記憶體依照其位址(由low至high)分成3個zone,分別是: DMANormalHighMem。而每個zone內的數字代表在這個zone之中依序還有多少可用的chunk數量。像這個例子,在DMA zone中,4k的chunk(由左至右第三個數字)還有5個可用的空間。

[本系列文章]

Linux系統效能分析與探討 - [1] CPU的效能關鍵字
Linux系統效能分析與探討 - [2] 記憶體的效能關鍵字
Linux系統效能分析與探討 - [3] Linux作業系統網路模組的效能關鍵字
Linux系統效能分析與探討 - [4] Linux block device的效能關鍵字
Linux系統效能分析與探討 - [5] 了解process的運作的指令 1 - ps
Linux系統效能分析與探討 - [6] 了解process的運作的指令2 - top
Linux系統效能分析與探討 - [7] 了解process的運作的指令3 - pstree
Linux系統效能分析與探討 - [8] 了解process使用記憶體的狀況 - pmap
Linux系統效能分析與探討 - [9] 顯示系統的附載狀況 - uptime, w
Linux系統效能分析與探討 - [10] 顯示系統的狀態 - vmstat
Linux系統效能分析與探討 - [11] 檢視記憶體的使用狀況 - free
Linux系統效能分析與探討 - [12] 取得詳細記憶體資訊 - cat /proc/meminfo
Linux系統效能分析與探討 - [13] Kernel slab cache的資訊 - slabtop


上一篇
Linux系統效能分析與探討 - [13] Kernel slab cache的資訊 - slabtop
下一篇
Linux系統效能分析與探討 - [15] slabinfo
系列文
Linux系統效能調教31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 則留言

0
ted99tw
iT邦高手 1 級 ‧ 2012-10-08 23:08:52

沙發

哇,好壯觀的list,強推!!

我要留言

立即登入留言