stat 命令家族(1)- 详解 vmstat
性能测试必备的 Linux 命令系列,可以看下面链接的文章哦
vmstat 介绍
- Virtual Meomory Statistics,报告虚拟内存统计信息
- 会统计进程信息、内存、交换区、IO、磁盘、CPU 等数据
vmstat 语法格式
vmstat [options] [delay [count]]
- options:命令行参数,可选
- delay:间隔多久统计一次数据,可选
- count:统计一次,可选
- 注意:若只传了 delay,则统计次数是无限次,结束统计后会打印本次所有数据的平均值
小栗子
vmstat
每隔 1s 统计打印一次数据,统计无限次
vmstat
每隔 2s 统计打印一次数据,共统计 5 次
vmstat 命令行参数
| 简写 | 完整写法 | 参数后是否要指定一个值 | 作用 |
| -a | --active | F | 显示活动和非活动内存 |
| -n | --one-header | F | 仅显示一次标题,而不是定期显示 |
| -s | --stats | F | 获取内存、CPU、交换区、中断次数、上下文切换次数等信息 |
| -d | --disk | F | 获取磁盘的详细信息(读写信息) |
| -D | --disk-sum | F | 获取磁盘的一些摘要信息 |
| -P | --partition device | T(device) | 有关分区的详细统计信息 |
| -S | --unit character | T(character) |
|
| -t | --timestamp | F | 加一列显示当前时间 |
| -V | --version | F | 版本 |
| -h | --help | F | 帮助文档 |
vmstat 统计数据的字段说明

共有 6 个模块
procs:进程状态
| 字段 | 字段说明 |
| r | 处于 Runnable 状态的进程数量 |
| b | 处于不可中断睡吗状态的进程数量 |
memory:内存信息
| 字段 | 字段说明 |
| swpd | 已用虚拟内存 |
| free | 空闲内存 |
| buff | 用于缓冲区的内存 |
| cache | 用于缓存的内存 |
| inact | 不活动的内存量(-a) |
| active | 活动的内存量(-a) |
swap:交换区
| 字段 | 字段说明 |
| si | 每秒从交换区写到内存的大小 |
| so | 每秒写入交换区的内存大小 |
io:io 读写信息
现在的Linux版本块的大小为1024bytes
| 字段 | 字段说明 |
| bi | 每秒读取的块数 |
| bo | 每秒写入的块数 |
system:系统信息
| 字段 | 字段说明 |
| in | 每秒中断数,包括时钟中断 |
| cs | 每秒上下文切换次数 |
CPU:CPU 详细信息
这些是总 CPU 时间的百分比
| 字段 | 字段说明 |
| us | 用户态进程的 CPU 使用率 |
| sy | 内核态进程的 CPU 使用率 |
| id | 空闲 CPU 百分比 |
| wa |
等待 IO 的 CPU 使用率 |
| st | 从虚拟机偷取的 CPU 百分比 |
vmstat 数据来源
主要来自这三个文件
- /proc/meminfo
- /proc/stat
- /proc/*/stat
vmstat

这些信息主要来自 /proc/stat
vmstat -s

这些信息的分别来自于 /proc/meminfo 、 /proc/stat 和 /proc/vmstat
vmstat -d

这些信息主要来自于 /proc/diskstats
vmstat 的其他用法
打印活动内存和不活动内存量
vmstat -a

以 MB 单位输出结果
vmstat -S M

以 MB 单位输出各事件计数器和内存的统计信息
vmstat -s -S M

vmstat 的注意事项
- vmstat 不需要特殊权限
- vmstat 报告旨在帮助确定系统瓶颈,所以它不会将自己视为正在运行的进程
- 当前所有的 Linux 块都是 1024 字节, 旧内核可能报告的块为 512 字节,2048 字节或 4096 字节
stat 命令家族(1)- 详解 vmstat的更多相关文章
- Linux常用命令及部分详解
1.总结部分 常用指令 ls 显示文件或目录 -l 列出文件详细信息l(list) -a 列出当前目录下所有文件及目录,包括隐藏的a(all) m ...
- free命令常用参数详解
free命令常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在运维期间我们会经常去查看服务器硬件信息,比如说内存,大家可能知道看内存用“[root@yinzhengji ...
- telnet 命令使用方法详解,telnet命令怎么用
telnet 命令使用方法详解,telnet命令怎么用? 文章类型:电脑教程 原创:天诺时空 什么是Telnet? 对于Telnet的认识,不同的人持有不同的观点,可以把Telnet当成一种通信协 ...
- ping命令执行过程详解
[TOC] ping命令执行过程详解 机器A ping 机器B 同一网段 ping通知系统建立一个固定格式的ICMP请求数据包 ICMP协议打包这个数据包和机器B的IP地址转交给IP协议层(一组后台运 ...
- Linux命令工具 top详解
Linux命令工具 top详解 top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器.top是一个动态显示过程,即可以通过用户按键来不 ...
- 以太坊客户端Geth命令用法-参数详解
Geth在以太坊智能合约开发中最常用的工具(必备开发工具),一个多用途的命令行工具. 熟悉Geth可以让我们有更好的效率,大家可收藏起来作为Geth命令用法手册. 本文主要是对geth help的翻译 ...
- 每周一个linux命令之---uptime详解
每周一个linux命令之---uptime详解 linux命令 uptime详解 引言:从今天开始,每周更新一个对程序员有用的linux命令,我真的没敢写每天一个,我怕我坚持不下去,每周一个还是可以的 ...
- 【linux】linux命令grep + awk 详解
linux命令grep + awk 详解 grep:https://www.cnblogs.com/flyor/p/6411140.html awk:https://www.cnblogs.com ...
- linux route命令的使用详解 添加永久静态路由 tracert traceroute
linux route命令的使用详解 添加永久静态路由 tracert traceroute route -n Linuxroute print Windows traceroute ...
- VLC命令行参数详解
VLC命令行参数详解 2012-11-29 14:00 6859人阅读 评论(0) 收藏 举报 Usage: vlc [options] [stream] ...You can specify mul ...
随机推荐
- MYSQL 之 JDBC(八):增删改查(六)ReflectionUtils
这里在网上找了一份ReflectionUtils package com.litian.jdbc; /** * @author: Li Tian * @contact: litian_cup@163. ...
- java 面向对象(四十三):反射(七)反射应用四:动态代理
1.代理模式的原理:使用一个代理将对象包装起来, 然后用该代理对象取代原始对象.任何对原始对象的调用都要通过代理.代理对象决定是否以及何时将方法调用转到原始对象上. 2.静态代理2.1 举例:实现Ru ...
- java 面向对象(四十一):反射(五)反射应用二:获取运行时类的完整结构
我们可以通过反射,获取对应的运行时类中所有的属性.方法.构造器.父类.接口.父类的泛型.包.注解.异常等....典型代码: @Test public void test1(){ Class clazz ...
- 数据可视化实例(十七):包点图 (matplotlib,pandas)
排序 (Ranking) 包点图 (Dot Plot) 包点图表传达了项目的排名顺序,并且由于它沿水平轴对齐,因此您可以更容易地看到点彼此之间的距离. https://datawhalechina.g ...
- Java并发编程实践
最近阅读了<Java并发编程实践>这本书,总结了一下几个相关的知识点. 线程安全 当多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任 ...
- 面试官:请你说下N95应该怎么测试?这样回答让他竖起大拇指!
随着”新冠疫情“慢慢地消散,各大企业都开始恢复正常的运行. 因为疫情造成很多工作人员的流失,企业也开始疯狂的招聘新鲜的人才,这对于莘莘求职者无疑是个机会. 但是因为求职者众多,很多面试官也开始想方设法 ...
- Linux下显示运行时链接(运行时加载)
目录 介绍 如何加载动态库 dlopen() 第一个参数: 被加载动态库的路径 第二个参数: flag表示函数符号的解析方式 dlopen 返回值 dlsym() 参数: 返回值 符号优先级 dler ...
- Security and Risk Management(5)
Ethics: ISC Code of Ethics You agree to this before the exam, and the code of ethics is very testabl ...
- Burp Suite Repeater Module - 中继模块
目的:节省网页应用分析时间 目标对象:http://10.0.0.15/getboo/login.php 通过调整Request的参数,不断尝试,通过Response查看状态.从而节省在浏览器中操作的 ...
- Mnist手写数字识别 Tensorflow
Mnist手写数字识别 Tensorflow 任务目标 了解mnist数据集 搭建和测试模型 编辑环境 操作系统:Win10 python版本:3.6 集成开发环境:pycharm tensorflo ...