From c15bbe80796a6c7e4966e0a150fc35d4411d556e Mon Sep 17 00:00:00 2001 From: "ithink.chan" Date: Mon, 23 Dec 2019 09:56:47 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A5=E5=85=85=20pidstat=20=E6=8C=87?= =?UTF-8?q?=E4=BB=A4.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: ithink.chan --- .../Sysstat/Sysstat_移植和使用.md | 30 +++++++++++++++++-- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/Software/Applications/Sysstat/Sysstat_移植和使用.md b/Software/Applications/Sysstat/Sysstat_移植和使用.md index d0e7d6a..dc9f68c 100644 --- a/Software/Applications/Sysstat/Sysstat_移植和使用.md +++ b/Software/Applications/Sysstat/Sysstat_移植和使用.md @@ -24,13 +24,37 @@ make ## 使用 -### 语法 +### pidstat + +pidstat 是sysstat工具的一个命令,用于监控全部或指定进程的cpu、内存、线程、设备IO等系统资源的占用情况,用法如下: + +```sh +pidstat [ 选项 ] [ <时间间隔> ] [ <次数> ] +``` + +常用的参数: + +* -u:默认的参数,显示各个进程的cpu使用统计 +* -r:显示各个进程的内存使用统计 +* -d:显示各个进程的IO使用情况 +* -p:指定进程号 +* -w:显示每个进程的上下文切换情况 +* -t:显示选择任务的线程的统计信息外的额外信息 +* -T { TASK | CHILD | ALL }:这个选项指定了pidstat监控的。TASK表示报告独立的task,CHILD关键字表示报告进程下所有线程统计信息。ALL表示报告独立的task和task下面的所有线程。注意:task和子线程的全局的统计信息和pidstat选项无关。这些统计信息不会对应到当前的统计间隔,这些统计信息只有在子线程kill或者完成的时候才会被收集。 +* -V:版本号 +* -h:在一行上显示了所有活动,这样其他程序可以容易解析。 +* -I:在SMP环境,表示任务的CPU使用率/内核数量 +* -l:显示命令名和所有参数 + +### iostat + +#### 语法 ```sh iostat [ -c ] [ -d ] [ -h ] [ -N ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [ device [...] | ALL ] [ -p [ device [,...] | ALL ] ] [ interval [ count ] ] ``` -### 入门使用 +#### 入门使用 参数 -d 表示,显示设备(磁盘)使用状态;-k某些使用block为单位的列强制使用Kilobytes为单位;2表示,数据显示每隔2秒刷新一次。-x 选项将用于显示和io相关的扩展数据。-c 参数用来获取cpu部分状态值。 @@ -41,7 +65,7 @@ iostat -d -x -k 1 10 iostat -c 1 10 ``` -### 输出信息的意义 +#### 输出信息的意义 tps:该设备每秒的传输次数(Indicate the number of transfers per second that were issued to the device.)。"一次传输"意思是"一次I/O请求"。多个逻辑请求可能会被合并为"一次I/O请求"。"一次传输"请求的大小是未知的。