vmstat提供了非常多的系統相關資訊,包括process、CPU、記憶體、swap空間與I/O狀況,是系統管理與效能檢視不可或缺的。vmstat命令可以後面可以加上更新時間,這樣你就可以持續觀測系統的變化,例如
#每兩秒更新一次vmstat輸出
vmstat 2
procs -----------memory-------------------- ---swap-- -----io---- --system-- -----cpu------
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 11186368 135828 492676 0 0 64 1 48 115 0 0 100 0 0
0 0 0 11186368 135836 492676 0 0 0 88 1169 2708 0 0 100 0 0
0 0 0 11186368 135836 492676 0 0 0 0 1085 2690 0 0 100 0 0
0 0 0 11186368 135844 492676 0 0 0 14 1134 2688 0 0 100 0 0
0 0 0 11186368 135852 492676 0 0 0 22 1151 2697 0 0 100 0 0
0 0 0 11186368 135852 492676 0 0 0 0 1128 2670 0 0 100 0 0
vmstat的內容豐富,各個欄位的意義分別如下:
proc
r: Queue中的process個數
b: 等待中的process個數
memory
swpd: 虛擬記憶體所占用的空間
free: 可用的記憶體空間
buff: Buffer所占用的記憶體空間
cache: Cache所占用的記憶體空間
swap
si: Swap-in (從disk寫入記憶體的大小)
so: Swap-out (從記憶體寫到disk的大小)
io
bi: I/O 每秒讀取的block個數
bo: I/O 每秒寫入的block個數
system
in: 每秒中斷的個數
cs: 每秒content switch的個數。
Content switch意指process在多工的環境或是遇到中斷的情形下進行狀態切換的動作。
cpu
us: 使用者執行的時間 (user time)
sy: Kernel執行的時間 (system time)
id: Idle等待的時間
wa: 等待I/O的時間
st: 多工環境中,時間竊取(time stolen)的時間。
[本系列文章]
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