1.基本介绍
vmstat命令的含义为显示虚拟内存状态(“Viryual Memor Statics”),但是它可以报告关于进程、内存、I/O等系统整体运行状态。
2.语法
vmstat(选项)(参数)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
选项:
-a:显示活动内页;
-f:显示启动后创建的进程总数;
-m:显示slab信息;
-n:头信息仅显示一次;
-s:以表格方式显示事件计数器和内存状态;
-d:报告磁盘状态;
-p:显示指定的硬盘分区状态;
-S:输出信息的单位。
参数:
事件间隔:状态信息刷新的时间间隔;
次数:显示报告的次数。
|
3.详解
1
2
3
4
5
6
7
8
9
|
[root@localhost ~]
# vmstat 3 10
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
r b swpd
free
buff cache si so bi bo
in
cs us sy
id
wa st
1 0 0 949456 1568 441012 0 0 15 24 24 29 0 0 99 0 0
0 0 0 949456 1568 441012 0 0 0 0 26 39 0 0 100 0 0
0 0 0 949456 1568 441012 0 0 0 0 24 41 0 0 100 0 0
0 0 0 949456 1568 441012 0 0 0 0 26 40 0 0 100 0 0
0 0 0 949456 1568 441012 0 0 0 0 19 34 0 0 100 0 0
0 0 0 949580 1568 441012 0 0 0 0 29 46 0 0 100 0 0
|
每三秒显示一次,总共显示十次。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
procs:
r:在运行队列中等待的进程,判断cpu是否够用,如果长期大于1.
b:在等待io的进程
memory:
swpd:已经使用的交换内存(kb)
free :空闲的物理内存(kb)
buff:用做缓冲区的内存(kb)
cache:用做高速缓存的内存(kb),如果cache比较高,说明频繁访问的文件都在cache中,那么磁盘的bi将会降低。
swap:
si:从磁盘到交换内存的交换页数量(kb /s ),由磁盘到内存(以内存为中心)
so:从内存交换到磁盘的交换页的数量(kb /s ),由内存到磁盘
io:
bi:发送到块设备的块数,每秒读取的块数。
bo:从块设备接收的块数,每秒写入的块数。
system:
in :每秒的中断数,包括时钟中断。
cs:每秒的上下文切换数
cpu:
us:用户使用cpu的时间(%),如果us比较高,说明用户进程消耗cpu比较高。
sy:系统进程使用cpu的时间,如果sy比较高,说明系统内核消耗cpu比较高。
id :CPU空闲时间
wa:等待io所消耗的cpu时间,wa比较高,说明io等待比较严重。可能是磁盘大量随机访问,也可能磁盘出现瓶颈问题。
st:从虚拟设备中获得的时间
|