你的位置:首页 > 操作系统

[操作系统][Linux 性能检测工具]PIDSTAT


 

PIDSTAT

NAME

pidstat对linux任务的统计

语法

pidstat [ -C comm ] [ -d ] [ -h ] [ -I ] [ -l ] [ -p { pid [,...] | SELF | ALL } ] [ -r ] [ -t ] [ -T { TASK | CHILD | ALL } ] [ -u ] [ -V ] [ -w ] [ interval [ count ] ]

描述

pidstat命令用来监控当前被linux内核管理的独立的任务。输出-p参数的每个任务或者-p ALL输出所有linux内核管理的任务。如果不写参数默认为-p ALL不过只有活动的任务会出现在报告中。

Pidstat命令可用来监控选择任务的子进程。具体看-T选项。

Interval参数指定每次报告的间隔时间。如果为0表示报告从系统启动后的统计信息。Cout参数表示生成的报告数量。如果interval没有指定count参数会一直生成。

你可以通过指定选项来指定活动的,如果不指定则只有现实cpu活动。

选项

         -C comm

                  只显示包含comm字符串的任务。

         -d

                   报告IO统计显示以下信息:

        PID:进程id

        kB_rd/s:每秒从磁盘读取的KB

        kB_wr/s:每秒写入磁盘KB

        kB_ccwr/s:任务取消的写入磁盘的KB。当任务截断脏的pagecache的时候会发生。

        COMMAND:task的命令名

         -h

                   在一行上显示了所有活动,这样其他程序可以容易解析。

         -I

                   在SMP环境,表示任务的CPU使用率/内核数量

         -l

                   显示命令名和所有参数

         -p{ pid [,...] | SELF | ALL }

         选择一个任务(进程),报告统计信息。Pid是进程标识符。SELF关键字说明pidstat报告自己的进程,如果为ALL报告系统中所有的任务。

         -r

                   报告错误也和内存利用,当报告某个任务,显示如下:

                            PID进程标识符

                            Minflt/s:任务每秒发生的次要错误,不需要从磁盘中加载页

                            Majflt/s:任务每秒发生的主要错误,需要从磁盘中加载页

                            VSZ:虚拟地址大小,虚拟内存的使用KB

                            RSS:常驻集合大小,非交换区五里内存使用KB

                            Command:task命令名

                   当显示全局统计所有任务和所有线程,会显示以下值:

                            PID:进程标识符

                            Minflt-nr:interval时间内,所有任务和子线程的次要错误。

                            Majflt-nr:interval时间内,所有任务和子线程的主要错误。

                            Command:命令名

         -t

                   显示选择任务的线程的统计信息外的额外信息:

                            TGID:主线程的表示

                            TID:线程id

         -T { TASK | CHILD | ALL }

       这个选项指定了pidstat监控的。TASK表示报告独立的task,CHILD关键字表示报告进程下所有线程统计信息。ALL表示报告独立的task和task下面的所有线程。

       注意:task和子线程的全局的统计信息和pidstat选项无关。这些统计信息不会对应到当前的统计间隔,这些统计信息只有在子线程kill或者完成的时候才会被收集。

         -u

                   报告CPU利用率

                   报告独立进程是显示:

                            PID:进程id

                            %usr:用户级别cpu使用率

                           %system:系统级别cpu使用率

                            %guest:虚拟处理器的cpu使用率

                            %CPU:总CPU使用率

                           CPU:进程使用到的cpu个数。

                            Command:命令名

                   当报告任务和所有线程全局统计信息:

                            PID:进程id

                            Usr-ms:任务和子线程在用户级别使用的毫秒数。

                            System-ms:任务和子线程在系统级别使用的毫秒数。

                            Guest-ms:任务和子线程在虚拟机(running a virtual processor)使用的毫秒数。

                            Command:命令名

         -V

                   输出版本号。

         -w

                   报告上下文切换活动:

                            PID:进程id

                            Cswch/s:每秒主动任务上下文切换数量

                            Nvcswch/s:每秒被动任务上下文切换数量

                            Command:命令名