Intro Linux $ vmstat

Intro Linux $ vmstat

這篇介紹Linux $ vmstat指令。

用途

查看CPU usage、memory usage、IO read/write。

在Linux輸入
$ vmstat

Output:
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 11560580 12 266248 0 0 4 3 95 161 1 0 99 0 0

參數說明

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: 每秒context switch的個數。
Context switch意指process在多工的環境或是遇到中斷的情形下進行狀態切換的動作。

cpu
us: 使用者執行的時間 (user time)
sy: Kernel執行的時間 (system time)
id: Idle等待的時間
wa: 等待I/O的時間
st: 多工環境中,時間竊取(time stolen)的時間。