参数详解:
有关进程的信息有:(kthr)
r:在所选择的任意采样间隔期间的平均可运行内核线程数。可运行---即在就绪状态等待的进程数。
b:采样期间在虚拟内存中等待队列的平均内核线程数。即在等待状态等待的进程数。
一般来说r应该为0,如果不为零而数值又不是很大则表明CPU有点小问题;r 应该始终高于 b;如果不是,通常意味着遇到了 CPU 瓶颈。
有关内存的信息有:(memory)
avm :使用的页面数。
fre :空闲队列中的页面数。
有关CPU的信息有:(cpu)
us :在指定时间间隔内CPU在用户态的利用率。
sy :在指定时间间隔内CPU在核心态的利用率。
id :在指定时间间隔内CPU空闲时间比。
wa :在指定时间间隔内CPU因为等待I/O而空闲的时间比。
vmstat 可以用来确定一个系统的工作是受限于CPU还是受限于内存:如果CPU的sy和us值相加的百分比接近100%,或者运行队列(r) 中等待的进程数总是不等于 0,则该系统受限于CPU;如果pi、po的值总是不等于0,则该系统受限于内存。
如果您的 us 和 sys 条目都平均高于 80%,很可能遇到了 CPU 瓶颈。如果上升到了 100%,您的系统就真的太繁忙。如果这些数字很小,但 wa(等待 I/O)很高(通常大于 30),这意味着系统上存在 I/O 问题,从而导致 CPU 不能到达其最佳工作状态。如果 sy 时间 比 us 时间 长,这意味着您的系统处理数字的时间比实际处理内核数据的时间短。这也不好。