命令:
vmstat -w 3 (加宽显示,3秒刷新一次)
效果:
r: 显示了多少进程正在等待CPU,当这个值超过了逻辑CPU个数,就会出现CPU瓶颈。
b: 显示了多少进程正在不可中断地休眠(等待I/O)。
注:通过命令查看逻辑CPU个数
cat /proc/cpuinfo | grep "processor" | wc -l
--------------- memory --------------
swpd: 虚拟内存的使用量[单位KB]。
free: 未被分配的内存[单位KB]。
buff: 写缓冲[单位KB]。 (A buffer is something that has yet to be "written" to disk)
cache: 读缓存[单位KB]。 (A cache is something that has been "read" from the disk and stored for later use)
注:当系统写一个文件时,可以观察到cache增加了,写完马上读取这个文件时,能发现读取速度大大提升,
因为部分数据从cache中读取出来的。这个时候删除掉这个文件,会发现cache释放了一块内存。
--------------- swap --------------
si: 每秒从磁盘写入内存的大小[KB/s]
so: 每秒从内存写入磁盘的大小[KB/s]
注:如果这个值不为0,通常说明内存不够用了。
--------------- io --------------
bi: 块读取/秒,通常反映磁盘读。
bo: 块写出/秒,通常反映磁盘写。
注:现在的Linux版本块的大小为1024bytes。
(All linux blocks are currently 1024 bytes. Old kernels may report blocks as 512 bytes, 2048 bytes, or 4096 bytes.)
--------------- system --------------
in: 每秒中断的数量,包括时钟中断
cs: 每秒上下文切换的次数
注:这两个值越大,会看到由内核消耗的cpu时间会越多
--------------- cpu --------------
us: 用户态进程的CPU百分比,包括设置了nice值的进程。
sy: 内核态进程的CPU百分比。
id: 处于空闲的CPU百分比。
wa: 等待IO时间的CPU百分比。
st: Time stolen from a virtual machine
原文出自:http://blog.csdn.net/daiyudong2020/article/details/53231630
End;