「vmstat(8)」-

报告虚拟内存统计信息

命令语法格式

vmstat [options] [delay [count]]

命令描述

命令vmstat报告有关进程,内存,分页,块IO,捕获,磁盘,CPU活动的信息。

生成的第一份报告给出了自上次重启以来的平均值。在一个简单的延时后,给出其他报告。 在任何一种情况下,进程和内存报告都是即时的。

命令行选项

-a, –active
给定2.5.41内核或更好的内核,显示活动和非活动内存。

-f, –forks
开关-f显示自引导以来的fork数。 这包括fork,vfork,clone系统调用,相当于创建的任务总数。 每个进程由一个或多个任务表示,具体取决于线程使用情况。 此显示不重复。

-n, –one-header
仅显示标题一次,而不是定期显示。

-s, –stats
显示各种事件计数器和内存统计信息的表。 此显示不重复。

-D, –disk-sum
报告一些有关磁盘活动的摘要统计信息。

-S, –unit character
在1000(k),1024(K),1000000(m)或1048576(M)字节之间切换输出。 请注意,这不会更改swap(si/so)或block(bi/bo)字段。

-t, –timestamp
为每一行添加时间戳。

-w, –wide
宽输出模式(对于具有较高内存量的系统非常有用,其中默认输出模式会受到不必要的列断裂影响)。 输出宽度超过每行80个字符。

指定模式

-m, –slabs
显示slab分配器相关信息。

-d, –disk
报告磁盘统计信息(需要2.5.70或更高版本)。

-p, –partition device
有关分区的详细统计数据(需要2.5.70或以上)。

其他选项

-V, –version
显示版本信息并退出。

-h, –help
显示帮助信息并退出。

命令行参数

delay
更新之间的延迟,以秒为单位。 如果未指定delay参数,则仅打印一个报告,其中包含自引导以来的平均值。

count
更新的次数。如果没有count,如果定义delay时,默认值为无限输出。

各模式下字段描述

VM

Procs
r:可运行进程的数量(正在运行或等待运行时)。
b:不间断睡眠中的进程数。

Memory
swpd:使用的虚拟内存量。
free:空闲内存量。
buff:用作缓冲区的内存量。
cache:用作缓存的内存量。
inact:非活动内存量。 (-a选项)
active:活动内存量。 (-a选项)

Swap
si:从磁盘交换的内存量(/s)。
so:交换到磁盘的内存量(/s)。

IO
bi:从块设备接收的块(blocks/s)。
bo:发送到块设备的块(blocks/s)。

System
in:每秒的中断数,包括时钟。
cs:每秒上下文切换次数。

CPU
这些是总CPU时间的百分比。
us:运行非内核代码所花费的时间。 (用户时间,包括nice时间)
sy:运行内核代码所花费的时间。 (系统时间)
id:空闲时间。 在Linux 2.5.41之前,这包括IO等待时间。
wa:等待IO的时间。 在Linux 2.5.41之前,包含在空闲状态。
st:从虚拟机中窃取的时间。 在Linux 2.6.11之前,unknown。

DISK

Reads
total:已成功完成总读取数
merged:分组读取(产生一个I/O)
sectors:扇区成功读取
ms:读取所花费的毫秒数

Writes
total:已成功完成的写入次数
merged:分组写入(产生一个I/O)
sectors:成功写入的扇区
ms:写入所花费的毫秒数

IO
cur:I / O正在进行中
s:I / O花费的秒数

DISK PARTITION

reads:发送到此分区的读取总数
read sectors:分区的总读取扇区
writes:发送到此分区的写入总数
requested writes:为分区写入的写入请求总数

SLAB

cache:缓存名称
num:当前活动对象的数量
total:可用对象的总数
size:每个对象的大小
pages:至少有一个活动对象的页数

注意事项

执行vmstat不需要特殊权限。

这些报告旨在帮助识别系统瓶颈。 Linux vmstat不会将自己视为正在运行的进程。

所有linux块目前都是1024字节。 旧内核可以将块报告为512字节,2048字节或4096字节。

从procps 3.1.9开始,vmstat允许你选择单位(k,K,m,M)。 默认模式下,默认值为K(1024字节)。

vmstat使用slabinfo 1.1

不会将每个设备的块io制成表格或计算系统调用的数量。

相关文件

/proc/meminfo
内存信息。

/proc/stat
提供了有关内核活动的各种信息。自系统首次启动以来,此文件中报告的所有数字都是聚合。

/proc/*/stat
进程信息。

相关手册

free(1), iostat(1), mpstat(1), ps(1), sar(1), top(1)

参考文献

更新日志

  • 09/29/2018 创建文章