linux系統分析工具之slabtop(十二)

slabtop
簡介:
 slabtop - display kernel slab cache information in real time(實時的顯示內核slab緩存信息,透過/proc/slabinfo)
內核的模塊在分配資源的時候,爲了提高效率和資源的利用率,都是透過slab來分配的。通過slab的信息,再配合源碼能粗粗瞭解系統的運行情況,比如說什麼資源有沒有不正常的多,或者什麼資源有沒有泄漏。linux系統透過/proc/slabinfo來向用戶暴露slab的使用情況。
Linux 所使用的 slab 分配器的基礎是 Jeff Bonwick 爲 SunOS 操作系統首次引入的一種算法。Jeff 的分配器是圍繞對象緩存進行的。在內核中,會爲有限的對象集(例如文件描述符和其他常見結構)分配大量內存。Jeff 發現對內核中普通對象進行初始化所需的時間超過了對其進行分配和釋放所需的時間。因此他的結論是不應該將內存釋放回一個全局的內存池,而是將內存保持爲針對特定目而初始化的狀態。Linux slab 分配器使用了這種思想和其他一些思想來構建一個在空間和時間上都具有高效性的內存分配器。
保存着監視系統中所有活動的 slab 緩存的信息的文件爲/proc/slabinfo
用法:
 slabtop [options]
描述:
 slabtop displays detailed  kernel  slab  cache  information in real time. It displays a listing of the top caches sorted by one of the listed sort criteria.  It also displays a statistics header filled with slab layer information.
選項:
 --delay=n, -d n		#每n秒更新一次顯示的信息,默認是每3秒
 --sort=S, -s S			#指定排序標準進行排序(排序標準,參照下面或者man手冊)
 --once, -o			#顯示一次後退出
 --version, -V			#顯示版本
 --help				#顯示幫助信息
排序標準:
 a:     sort by number of active objects
 b:     sort by objects per slab
 c:     sort by cache size
 l:     sort by number of slabs
 v:    sort by number of active slabs
 n:     sort by name
 o:     sort by number of objects
 p:     sort by pages per slab
 s:     sort by object size
 u:     sort by cache utilization
輸出界面可用的命令:
 <SPACEBAR>:	        刷新顯示內容
 Q:			退出
ps.建議深入瞭解linux內存分配機制,以上內容僅爲皮毛。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章