Linux性能分析专题之vmstat 解析

vmstat命令从字面上理解是虚拟内存统计,其实可以统计的信息不止这些

vmstat是Virtual Meomory Statistics(虚拟内存统计)的缩写,可对操作系统的虚拟内存、进程、CPU活动进行监控。它能够对系统的整体情况进行统计,无法对某个进程进行深入分析。vmstat 工具提供了一种低开销的系统性能观察方式。

(1)用法

用法: vmstat [选项参数]

或 vmstat [选项参数] [数字] [数字]

(2)功能:

功能: 报告虚拟内存的统计信息,关于进程、内存、I/O等系统整体运行状态。

(3)选项参数:

  1. -d:        显示磁盘相关统计信息。

  2. -a:       显示活跃和非活跃内存

  3. -f:        显示从系统启动至今的fork数量。

  4. -p:       显示指定磁盘分区统计信息

  5. -s:       显示内存相关统计信息及多种系统活动数量。

  6. -m:       显示slabinfo

我的编译服务器没有编译源代码的时候,统计如下:
在这里插入图片描述
r表示当前可运行的进程数目
b表示block,阻塞进程数目
swapd 交换空间的大小,如果大于0表示ram不足了
free+buff+cache加起来是空闲内存的大小,buffe是块设备缓存,cache是文件缓存
si表示每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。
so 每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上
bi块设备每秒接收的块设备数目
bo块设备每秒发送的块设备数目,例如我们读取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO过于频繁,需要调整
in 每秒CPU的中断次数,包括时间中断
cs 每秒上下文切换次数,这个数目大会浪费cpu资源,分为进程上下文切换,线程上下文切换,中断上下文切换。上下文包括了各种寄存器,虚拟内存,打开的文件等资源。
us: 用户进程执行时间(user time)
sy: 系统进程执行时间(system time)
id: 空闲时间(包括IO等待时间),中央处理器的空闲时间 。以百分比表示。
wa: 等待IO时间

当我执行编译android的uboot和kernel时候,我的编译服务器的vmstat统计信息如下:
在这里插入图片描述
编译android的系统层的时候,我的编译服务器的vmstat统计信息如下:
在这里插入图片描述
vmstat 3表示每3秒执行一次vmstat命令
vmstat 3 6表示每3秒执行一次vmstat命令,并且重复6次

vmstat还有如下的一个用法
在这里插入图片描述

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值