vmstat 命令
用途
报告虚拟内存统计信息。
语法
vmstat [ -f ] [ -i ] [ -s ] [ -I[-W]] [ -t ] [ -v ] [ -h ] [ -w ] [ -l ] [-c] [ -@ wparname | ALL] [{ -p | -P } physicalvolume | ALL] ALL] [-S power] [physicalvolume] [interval] [count]
描述
vmstat 命令会报告有关内核线程、虚拟内存、磁盘、管理程序页面、陷阱和处理器活动的统计信息。由 vmstat 命令生成的报告可以用于平衡系统负载活动。系统范围内的这些统计信息(所有的处理器中)都计算出以百分比表示的平均值,或者计算其总和。因为不会自动读取统计信息,所以 vmstat 命令可能会返回不一致的统计信息。
如果在没有标志的情况下运行 vmstat 命令,那么报告会包含系统启动后虚拟内存活动的摘要。如果指定 -f 标志,那么 vmstat 命令会报告系统启动后的派生数。physicalvolume 参数指定物理卷的名称。
interval 参数指定每次报告之间的秒数。如果不指定 interval 参数,那么 vmstat 命令会生成单个报告,该报告包含有关系统启动和退出之间所经历时间的统计信息。count 参数只能与 interval 参数一起指定。如果指定了 count 参数,那么它的值将确定生成的报告数目和报告相距秒数。如果指定 interval 参数而不指定 count 参数,那么会继续生成报告。不要对 count 参数指定值 0。
内核为内核线程、调页和中断活动维护统计信息,vmstat 命令通过使用 perfstat 内核扩展来对其进行访问。磁盘输入/输出统计信息由设备驱动程序维护。对于磁盘,利用活动时间和传输信息的次数来确定平均传输速率。活动时间的百分数根据报告期间驱动器忙的时间长度来计算。
从 AIX® 5.3 开始,vmstat 命令报告在Micro-Partitioning®环境中消耗的物理处理器 (pc) 数和消耗的授权 (ec) 百分比。这些度量值将对Micro-Partitioning环境显示。
由 vmstat 命令生成的报告包含系统配置行和列标题。如果指定了 -@ 标志,那么报告将包含系统配置和WPAR配置。系统配置行具有以下值:
- lcpu
- 指示逻辑处理器数。
- mem
- 指示内存量。
- tmem
- 指示 LPAR 的实内存大小。注: 仅当提供了 -c 选项并且启用了 Active Memory™ Expansion 时,此标志才可用。
- ent
- 仅当使用共享处理器运行分区时才显示。
- drives
- 仅当物理卷名称受到监视时才显示。
- WPAR
- 指示活动工作负载分区的数目。仅当指定 -@ 标志时才会显示此项。
- memlim
- 指示工作负载分区的内存资源的限制。限制以兆字节 (MB) 表示。仅对已强制实施内存资源限制的WPAR显示此信息。
- cpulim
- 指示工作负载分区的处理器资源限制(以处理器单元数表示)。仅对已强制实施内存资源限制的WPAR显示此信息。
- rset
- 指示与WPAR相关联的 rset 注册表的类型。类型可以是常规或独占。仅针对与 rset 注册表相关联的 WPAR 显示此信息。
- mmode
- 指示内存方式。在启用了 Active Memory Sharing 的系统中会自动显示此度量值。在使用了 -c 选项时,也会显示此度量值。
- mpsz
- 内存池的大小(以吉字节计)。仅对共享内存显示此度量。
以下是列标题及其描述:
WPAR:关于工作负载分区的信息。仅当指定 -@ 标志时才会显示此项。
- WPAR
- 工作负载分区名称。注意事项:
- system WPAR 名称指示系统范围的统计信息。 global WPAR 名称指示仅属于全局的统计信息。
- 当使用 -@ ALL 选项启动 vmstat 命令,并且特定于 WPAR 的信息不可用于度量值时,将显示短破折号(-)而不是一个值。
- 使用 -@ wparname 启动 vmstat 命令或在WPAR中启动该命令时,如果未提供有关度量的WPAR信息,那么会使用 at 符号 (@) 来标记该度量,并且会显示有关该度量的系统范围的值。
- 如果度量值不受支持,那么将显示短破折号(-)而不是一个值。
kthr:关于内核线程状态的信息。
- r
- 取样时间间隔内的平均可运行内核线程数。可运行线程由处于预备状态但等待运行的线程以及已经在运行的线程组成。
- b
- 在采样时间间隔内,置于虚拟内存管理器 (VMM) 等待队列中(等待资源、等待输入/输出)的平均内核线程数。
Memory:关于虚拟内存和实内存的使用的信息。如果虚拟页已经被访问,那么虚拟页可以视为活动的页面。一页为 4096 个字节。
- avm
- 活动虚拟页。
- fre
- 空闲列表的大小。注: 大部分实内存都用作文件系统数据的高速缓存。对于保持较小的空闲列表,这是很正常的。
Page:关于缺页故障和调页活动的信息。此信息是间隔时间内的平均值,以秒为单位给出。
- re
- 页面调度程序输入/输出列表。
- pi
- 从调页空间调度进的页面。
- po
- 调出到调页空间的页面。
- fr
- 释放的页(页面替换)。
- sr
- 通过页替换算法扫描的页面。
- cy
- 按页替换算法的时钟周期。
Faults:采样时间间隔期间每秒的陷阱和中断率的平均值。
- in
- 设备中断
- sy
- 系统调用。
- cs
- 内核线程上下文切换。
CPU:处理器时间使用百分比的清单。
- us
- 用户时间。
如果不封顶分区的当前物理处理器耗用量超过授权容量,那么百分比将变得与所耗用的物理处理器 (pc) 数相关。
- sy
- 系统时间。
如果不封顶分区的当前物理处理器耗用量超过授权容量,那么百分比将变得与所耗用的物理处理器 (pc) 数相关。
- id
- 处理器空闲时间。
如果不封顶分区的当前物理处理器耗用量超过授权容量,那么百分比将变得与所耗用的物理处理器 (pc) 数相关。
- wa
- 处理器空闲时间,在此期间系统有未完成的磁盘/NFS I/O 请求。
如果不封顶分区的当前物理处理器耗用量超过授权容量,那么百分比将变得与所耗用的物理处理器 (pc) 数相关。
- pc
- 所耗用的物理处理器数。仅当使用共享处理器运行分区时才显示。
- ec
- 消耗的授权容量百分比。仅当使用共享处理器运行分区时才显示。因为计算该数据所依赖的时基可以变化,所以授权容量百分比可能有时会超过 100%。这种超过只在采样时间间隔很小时才会比较明显。
- rc
- 使用的处理器资源的百分比。仅针对具有已强制实施处理器资源限制的 WPAR 显示此信息。
Disk:提供采样时间间隔内发生的目标为指定物理卷的每秒传输次数。physicalvolume 参数可用于指定 1 到 4 个名称。每个指定驱动器的传输统计信息按指定顺序给出。该计数代表向物理设备的请求数。它并不暗示读取或写入的数据量。几个逻辑请求可以组合成为一个物理请求。如果使用了 physicalvolume 参数,那么会在命令执行开始时显示物理卷名称。
如果指定一个 -I 标志,I/O 定向视图将会出现以下栏目变化。
- kthr
- 除了列 r 和列 b 外,还显示列 p。
- p
- 正在等待 I/O 消息发送到原始设备的线程数。原始设备是直接连接到系统的设备。
如果指定 -I 标志的同时还指定了 -W 标志,那么附加列 w 也会随 r、b 和 p 标志一起显示。
- w
- 等待文件系统直接 I/O 和并发 I/O (CIO) 的线程数。
- page
- 将显示新列 fi 和 fo,代替 re 和 cy 列。
- fi
- 每秒调入的文件。
- fo
- 每秒调出的文件。
如果指定 -c 标志,那么 Active Memory Expansion 视图中将会出现以下列变化。
- 内存 (memory)
- 在列 avm 和 fre 的旁边,将显示列 csz、cfr 和 dxm。
- csz
- 当前的压缩池大小,以 4 K 页为单位。
- cfr
- 压缩池中提供的可用页,以 4 K 页为单位。
- dxm
- 扩展内存大小的不足额,以 4 K 页为单位。
- page
- 将显示新列 ci 和 co,代替 re 和 cy 列。
- ci
- 每秒钟从压缩池中调进的页数。
- co
- 每秒钟调出到压缩池的页数。
当 vmstat 命令正在运行时,如果在系统配置中存在将影响输出的更改,那么 vmstat 将打印有关该配置更改的警告消息。显示更新后的系统配置信息和标题后,它接着继续进行输出。
- alp
- 指示当前正在使用的大页面数。
- flp
- 指示在大页面空闲列表上的大页面数。
- avm
- fre
- re
- fi
- fo
- pi
- po
- ci
- co
- fr
- sr
- cy
- re、fi、fo 和 cy 选项的显示受 -I 选项影响。
- re、ci、co 和 cy 选项的显示受到 -c 选项的影响。
- 如果不受资源控制,那么 avm 和 fre 选项是系统范围的。因此,在设置 -@ 选项后,avm 和 fre 选项将用 at 符号 (@) 进行标记。
- psz
- 页大小(如 4 KB 和 64 KB)。
- siz
- 系统中所指定的页面大小的框架数量。
- pgsz
- 指示页大小(如 4 KB 和 64 KB)。
- 内存
- 表示所指定的页面大小的内存统计信息。
- siz
- 系统中所指定的页面大小的框架数量。
- avm
- 适用于所指定的页面大小的活动虚拟页。
- fre
- 所指定的页面大小的空闲列表大小。
- Page
- 表示所指定的页大小的相关缺页故障和调页活动。与页相关的 re、pi、po、fr、sr、cy、fi、fo、ci 和 co 列也适用于此报告。
标志
| 标志名称 | 描述 |
|---|---|
| -@ wparname | 报告工作负载分区的虚拟内存活动:
|
| -c | 使用输出中位于标题“内存”下的新列 csz、cfr 和 dxm 以及位于标题“页”下面的 ci 和 co 列(而不是使用 re 和 cy 注: 列)来显示内存压缩统计信息。仅当启用了 Active Memory Expansion 时,此选项才可用。
|
| -f | 报告从系统启动后的派生数目。 |
| -i | 显示从系统启动后每个设备造成的中断数目。 注: -I、-t、-w 和 -l 标志与 -i 标志一同指定时会将被忽略。
|
| -I | 用新的输出栏显示 I/O 定向视图,p 在标题 kthr 下;栏 fi 和 fo 在标题页面下,而不是栏下;re 和 cy 在页标题中。 |
| -l | 还显示“大页面”部分,其中包含 alp 和 flp 列。 |
| -p pagesize | 将所指定的页面大小的 VMM 统计信息附加到常规 vmstat 输出。 |
| -P pagesize | 仅显示与所指定的页面大小相关的 VMM 统计信息。 |
| -s | 将总数结构中的内容写入到标准输出,该结构包含从系统初始化后调页事件的绝对计数。-s 标志只能与 -v 标志一起使用。如下描述了这些事件:
|
| -s |
|
| -s |
|
| -s | 当与 -p pagesize 选项结合使用时,-s 选项将所指定的页面大小的总数结构附加到系统范围的总数结构中。该附加节在页面大小的头(例如,4K 页面)之后。因为以下这些统计信息与页面大小无关,所以在该 pagesize-based 节中不会显示以下详细信息:
注意事项:
|
| -S power | 将处理器的统计信息乘以 10power。该 power 的缺省值为 0。 将调整以下统计信息:
注意事项:
|
| -t | 打印 vmstat 的每一输出行旁边的时间戳记。时间戳记按照 HH:MM:SS 格式显示。 注: 如果指定了 -f、-s 或 -i 标志,那么将不打印时间戳记。
|
| -v | 将虚拟内存管理器维护的不同统计信息写入标准输出。-v 标志只能与 -s 和 -h 标志配合使用。 如果指定 -v 标志,那么会显示以下统计信息:
|
| -v | (由 -v 显示的统计信息,接上页):
如果指定 -v 标志和 -v 标志,那么会显示以下附加度量:
注意事项:
如果指定 -v 标志的同时还指定了 -c 标志,那么将显示以下附加度量值:
|
| -h | 显示包括系统管理程序页信息的
hypv-page 部分。hypv-page
部分包含以下度量:
如果指定 -v 标志和 -v 标志,那么会除了使用 -v 显示的度量外,还会显示以下度量:
|
| -w | 以宽屏方式显示报告。 |
| -W | 在 kthr 部分中显示其他字段 w。只允许将此选项与 -I 标志一起使用。 |
- 如果启用了 Active Memory Expansion,那么 vmstat 将在展开的视图中报告内存统计信息。但是,如果 AME_MEMVIEW 环境变量设置为 TRUE,那么内存统计信息将表示真实的视图。
- AME_MEMVIEW 环境变量对于使用 -c 选项报告的内存统计信息没有影响。
安全
任何用户都可以运行 vmstat 命令。如果用户不是 root 用户,那么视图仅限于用户自己的进程。
如果 RBAC 已激活并且 vios.system.stat.memory 角色归属于某个用户,那么该用户可以查看 root 用户所查看的视图。
示例
- 要显示引导后的统计信息摘要,请输入以下命令:
vmstat - 要以 2 秒为时间间隔显示 5 个摘要,请输入以下命令:
vmstat 2 5 - 要显示引导后的统计信息摘要(包括逻辑磁盘 scdisk13 和 scdisk14 的统计信息),请输入以下命令:
vmstat scdisk13 scdisk14 - 要显示派生统计信息,请输入以下命令:
vmstat -f - 要显示各种事件的计数,请输入以下命令:
vmstat -s - 要显示 vmstat 的每个输出列旁边的时间戳记,请输入以下命令:
vmstat -t - 要以另一组列显示面向 I/O 的视图,请输入以下命令:
vmstat -I - 要显示所有可用的 VMM 统计信息,请输入以下命令:
vmstat -vs - 要以 8 秒为时间间隔显示大页部分(包含
alp 和 flp 列),请输入以下命令:
vmstat -l 8 - 要显示特定于特定页大小(在此示例中为 4 KB)的 VMM 统计信息,请输入以下命令:
vmstat -p 4K - 要显示系统支持的所有页大小的 VMM 统计信息,请输入以下命令:
或者输入以下命令:vmstat -p ALLvmstat -p all - 要仅显示特定页大小(在此示例中为 4 KB)的 VMM 统计信息,请输入以下命令:
vmstat -P 4K - 要仅显示所有受支持页大小的 VMM 统计信息的每页清单,请输入以下命令:
或者输入以下命令:vmstat -P ALLvmstat -P all - 要显示引导后所有工作负载分区的统计信息摘要,请输入以下命令:
vmstat -@ ALL - 要显示为所有工作负载分区提供的所有 VMM 统计信息,请输入以下命令:
vmstat –vs -@ ALL - 要显示工作负载分区提供的WPAR统计信息和系统范围 VMM 统计信息,请输入以下命令:
vmstat -@ - 要将处理器值乘以 10 并显示结果,请输入以下命令:
vmstat -S 1 - 要显示系统管理程序的统计信息,请输入以下命令:
vmstat –h - 要显示有关借给系统管理程序的页的信息,请输入以下命令:
vmstat -vh - 要显示(启用了 Active Memory Expansion 的 LPAR 中的)内存压缩统计信息,请输入以下命令:
vmstat -c - 要显示(启用了 Active Memory Expansion 的 LPAR 中的)特定于每个页大小的内存压缩统计信息,请输入以下命令:
vmstat –c –P ALL - (在启用了 Active Memory Expansion 的 LPAR 中)要将内存压缩信息附加至由 -s 选项显示的统计信息,请输入以下命令:
vmstat –s -c - (在启用了 Active Memory Expansion 的 LPAR 中)要将内存压缩信息附加至由 -v 选项显示的统计信息,请输入以下命令:
vmstat –v -c
Files
| 项 | 描述 |
|---|---|
| /usr/bin/vmstat | 包含 vmstat 命令。 |