vmstatコマンドは、情報交換やCPUの活動へのUNIXシステムでは、仮想メモリ、ページスペースのプロセスに関する情報を取得するために使用されます。この情報は、システムの負荷を反映しています。統計の初めからvmstatの表示システムを開始するには、このコマンドは最初の実行後に実行された前回の統計情報を表示しvmstatコマンドを実行します。ユーザーが番号やタイミングの統計情報を指定することで、必要な統計情報を取得することができます。
[root@xieqichao ~]# vmstat 1 3
这是vmstat最为常用的方式,其含义为每隔1秒输出一条,一共输出3条后程序退出。
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r b swpd free buff cache si so bi bo in cs us sy id wa st
0 0 0 531760 67284 231212 108 0 0 260 111 148 1 5 86 8 0
0 0 0 531752 67284 231212 0 0 0 0 33 57 0 1 99 0 0
0 0 0 531752 67284 231212 0 0 0 0 40 73 0 0 100 0 0
[root@xieqichao ~]# vmstat 1 #其含义为每隔1秒输出一条,直到按CTRL+C后退出。
以下の説明は、出力テーブルの各列の意味について説明します。
プロセスに関する情報は以下のとおりです(procsの)
r: 在就绪状态等待的进程数。
b: 在等待状态等待的进程数。
メモリの詳細については、次のとおりです(メモリ)
swpd: 正在使用的swap大小,单位为KB。
free: 空闲的内存空间。
buff: 已使用的buff大小,对块设备的读写进行缓冲。
cache: 已使用的cache大小,文件系统的cache。
ページのスワップ領域の詳細については、次のとおりです(スワップ)
si: 交换内存使用,由磁盘调入内存。
so: 交换内存使用,由内存调入磁盘。
デバイス約IOブロック情報は、(IO)
bi: 从块设备读入的数据总量(读磁盘) (KB/s)
bo: 写入到块设备的数据总理(写磁盘) (KB/s)
失敗に関する情報があります(システム)
in: 在指定时间内的每秒中断次数。
sy: 在指定时间内每秒系统调用次数。
cs: 在指定时间内每秒上下文切换的次数。
CPUの詳細については、次のとおりです。(CPU)
us: 在指定时间间隔内CPU在用户态的利用率。
sy: 在指定时间间隔内CPU在核心态的利用率。
id: 在指定时间间隔内CPU空闲时间比。
wa: 在指定时间间隔内CPU因为等待I/O而空闲的时间比。
vmstat 可以用来确定一个系统的工作是受限于CPU还是受限于内存:如果CPU的sy和us值相加的百分比接近100%,或者运行队列(r)中等待的进程数总是不等于0,且经常大于4,同时id也经常小于40,则该系统受限于CPU;如果bi、bo的值总是不等于0,则该系统受限于内存。