vmstat.8

VMSTAT(8)

VMSTAT(8)

FreeBSD System Manager's Manual

VMSTAT(8)

vmstat

报告虚拟内存统计信息

vmstat [--libxo] [-afHhimoPsz] [-M core [-N system]] [-c count] [-n devs] [-p type,if,pass] [-w wait] [disks ...] [wait [count]]

vmstat 实用程序报告有关进程、虚拟内存、磁盘、陷阱和 cpu 活动的某些内核统计信息。

如果未指定 -M 选项,则通过 sysctl(3) 接口从当前运行的内核中获取信息。 否则,使用来自指定内核映像(或默认映像)的名称列表从指定的核心文件中读取信息。

选项如下:

--libxo

通过 libxo(3) 以不同的人类和机器可读格式生成输出。 有关命令行参数的详细信息,请参阅 xo_parse_args(3) 。

-a

-i 一起使用时,包括有关从未生成的中断的统计信息。

-c

重复显示 count 次数。 第一个显示是自重新启动以来的时间,每个后续报告都是自上次显示以来的时间段。 如果没有指定重复 count ,并且指定了 -w ,则默认为无穷大,否则默认为 1。

-f

报告自系统启动以来 fork(2), vfork(2) 和 rfork(2) 系统调用的数量,以及每个涉及的虚拟内存页数。

-h

将内存列更改为更易于人类阅读的形式。 如果标准输出是终端设备,则为默认值。

-H

将内存列更改为直数。 如果标准输出不是终端设备(例如脚本),则为默认值。

-i

报告自系统启动以来每个设备的中断次数。

-M

从指定的 core 中提取与名称列表关联的值。

-N

如果还指定了 -M ,则从指定 system 中提取名称列表而不是默认值,即系统引导的内核映像。

-m

按类型报告使用 malloc(9) 分配的内核动态内存的使用情况。

-n

从默认值 2 更改要显示的最大磁盘数。

-o

显示系统中的虚拟内存对象列表以及每个对象使用的常驻内存。

-P

报告每 cpu system/user/idle cpu 统计信息。

-p

指定要显示的设备类型。设备分为三类: 设备类型:

device type:

da

直接访问设备

sa

顺序访问设备

printer

打印机

proc

处理器设备

worm

一次写入读取多个设备

cd

CD 设备

scanner

扫描仪设备

optical

光存储设备

changer

介质转换器设备

comm

通讯设备

array

存储阵列设备

enclosure

机箱服务设备

floppy

软盘设备

interface:

IDE

集成驱动电子设备

SCSI

小型计算机系统接口设备

other

任何其他设备接口

passthrough:

pass

直通设备

用户必须指定至少一种设备类型,并且每个类别最多可以指定一种设备类型。 单个设备类型语句中的多个设备类型必须用逗号分隔。

可以在命令行上指定任意数量的 -p 参数。 将所有 -p 参数进行 OR 运算以形成一个匹配表达式,系统中的所有设备都将与该表达式进行比较。 与任何 -p 参数完全匹配的任何设备都将包含在 vmstat 输出中,最多两个设备,或用户指定的最大设备数。

-s

显示 sum 结构的内容,给出自系统启动以来发生的几种寻呼相关事件的总数。

-w

在每个显示之间暂停 wait 几秒钟。 如果未指定重复 wait 间隔,则默认为 1 秒。 vmstat 命令将接受并遵守非整数秒数。

-z

按区域报告内核区域分配器 uma(9) 使用的内存。

wait 和 count 参数可以在它们各自的标志之后在命令行上的任何位置在 disks 参数之前给出,或者没有它们的标志,作为最终参数。 后一种形式被接受是为了向后兼容,但最好使用带有 -w-c 的形式以避免歧义。

默认情况下, vmstat 显示以下信息:

procs

各种状态的线程数信息:

r

正在运行或在运行队列中

b

资源阻塞(I/O、分页等)

w

换出

memory

有关虚拟和实际内存使用情况的信息。

映射的虚拟内存是属于映射的虚拟内存对象的所有虚拟页面的总和。 请注意,即使当前仅映射了对象页面的子集,整个内存对象的大小也被视为已映射。 此统计信息与用于跟踪实际内存的活动页面队列无关。

avm

映射的虚拟内存 (以前在 vmstat 输出中称为活动)

fre

空闲列表的大小

page

有关页面错误和分页活动的信息。这些以每秒为单位给出。

flt

页面错误总数

re

页面重新激活(在洗衣或非活动队列中找到)

pi

分页的页面

po

分页的页面

fr

释放的页面

sr

页面守护程序扫描的页面

disks

每秒磁盘操作数(此字段取决于系统)。 通常,分页将在可用驱动器上拆分。 该字段的标题是磁盘名称和单元号的前两个字符。 如果系统中配置了两个以上的磁盘驱动器,则 vmstat 仅显示前两个驱动器,除非用户指定 要强制 -n 参数来增加显示的驱动器数量。 但是,这可能会导致显示超过 80 列。 vmstat 显示特定驱动器,可以在命令行中提供它们的名称。 vmstat 实用程序默认首先显示磁盘,然后系统中的各种其他随机设备添加最多两个设备(如果系统中有那么多设备)。 如果在命令行中指定了设备,或者指定了设备类型匹配模式(见上文), vmstat 将只显示给定设备或匹配模式的设备,不会随机选择系统中的其他设备。

faults

每秒陷阱/中断率。

in

设备中断(包括时钟中断)

sy

系统调用

cs

cpu 上下文切换

cpu

CPU 时间使用百分比的细分。

us

正常和低优先级进程的用户时间

sy

系统和中断时间

id

CPU空闲

/boot/kernel/kernel

默认内核名单

/dev/kmem

默认内存文件

命令:

vmstat -w 5

将每五秒打印一次系统正在做什么。

命令:

vmstat -p da -p cd -w 1

将告诉 vmstat 选择前两个直接访问或 CDROM 设备并显示这些设备的统计信息,以及每秒的其他系统统计信息。

fstat(1), netstat(1), nfsstat(1), ps(1), systat(1), libmemstat(3), libxo(3), xo_parse_args(3), gstat(8), iostat(8), pstat(8), sysctl(8), malloc(9), uma(9)

The sections starting with ``Interpreting system activity'' in Installing and Operating 4.3BSD.

vmstat 实用程序首次出现在 4.3BSD 中。

-c-w 选项仅适用于默认输出。

July 26, 2020

FreeBSD 13.1-RELEASE

最后更新于

FreeBSD 中文社区