简介

pidstat主要用于监控全部或指定进程占用系统资源的情况,如CPU,内存、设备IO、任务切换、线程等。pidstat首次运行时显示自系统启动开始的各项统计信息,之后运行pidstat将显示自上次运行该命令以后的统计信息。用户可以通过指定统计的次数和时间来获得所需的统计信息。

实例讲解

默认参数

执行pidstat,将输出系统启动后所有活动进程的cpu统计信息:

linux:~ # pidstat

Linux 2.6.32.12-0.7-default (linux)             06/18/12        _x86_64_

11:37:19          PID    %usr %system  %guest    %CPU   CPU  Command

……11:37:19 11452 0.00 0.00 0.00 0.00 2  bash11:37:19 11509 0.00 0.00 0.00 0.00 3 dd

以上输出,除最开头一行显示内核版本、主机名、日期和cpu架构外,主要列含义如下:

· 11:37:19: pidstat获取信息时间点

· PID: 进程pid

· %usr: 进程在用户态运行所占cpu时间比率

· %system: 进程在内核态运行所占cpu时间比率

· %CPU: 进程运行所占cpu时间比率

· CPU: 指示进程在哪个核运行

· Command: 拉起进程对应的命令

指定采样周期和采样次数

pidstat命令指定采样周期和采样次数,命令形式为”pidstat [option] interval [count]”,以下pidstat输出以2秒为采样周期,输出10次cpu使用统计信息:

pidstat 2 10

cpu使用情况统计(-u)

使用-u选项,pidstat将显示各活动进程的cpu使用统计,执行”pidstat -u”与单独执行”pidstat”的效果一样。

内存使用情况统计(-r)

使用-r选项,pidstat将显示各活动进程的内存使用统计:

linux:~ # pidstat -r -p 13084 1

Linux 2.6.32.12-0.7-default (linux)             06/18/12        _x86_64_

15:08:18          PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command15:08:19 13084 133835.00 0.00 15720284 15716896 96.26  mmmm15:08:20 13084 35807.00 0.00 15863504 15849756 97.07  mmmm15:08:21 13084 19273.87 0.00 15949040 15792944 96.72  mmmm

以上各列输出的含义如下:

minflt/s: 每秒次缺页错误次数(minor page faults),次缺页错误次数意即虚拟内存地址映射成物理内存地址产生的page fault次数

majflt/s: 每秒主缺页错误次数(major page faults),当虚拟内存地址映射成物理内存地址时,相应的page在swap中,这样的page fault为major page fault,一般在内存使用紧张时产生

VSZ:      该进程使用的虚拟内存(以kB为单位)

RSS:      该进程使用的物理内存(以kB为单位)%MEM:     该进程使用内存的百分比

Command:  拉起进程对应的命令

IO情况统计(-d)


使用-d选项,我们可以查看进程IO的统计信息:

linux:~ # pidstat -d 1 2

Linux 2.6.32.12-0.7-default (linux)             06/18/12        _x86_64_

17:11:36          PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command17:11:37 14579 124988.24 0.00 0.00 dd

17:11:37          PID   kB_rd/s   kB_wr/s kB_ccwr/s  Command17:11:38 14579 105441.58 0.00 0.00 dd

输出信息含义

kB_rd/s: 每秒进程从磁盘读取的数据量(以kB为单位)

kB_wr/s: 每秒进程向磁盘写的数据量(以kB为单位)

Command: 拉起进程对应的命令

针对特定进程统计(-p)

使用-p选项,我们可以查看特定进程的系统资源使用情况:

linux:~ # pidstat -r -p 1 1

Linux 2.6.32.12-0.7-default (linux)             06/18/12        _x86_64_

18:26:17          PID  minflt/s  majflt/s     VSZ    RSS   %MEM  Command18:26:18 1 0.00 0.00 10380 640 0.00  init18:26:19 1 0.00 0.00 10380 640 0.00  init

……

pidstat常用命令

使用pidstat进行问题定位时,以下命令常被用到:

pidstat -u 1

pidstat -r 1

pidstat -d 1

以上命令以1秒为信息采集周期,分别获取cpu、内存和磁盘IO的统计信息。

转自 http://www.cnblogs.com/bangerlee/articles/2555307.html

使用pidstat查看进程资源使用情况的更多相关文章

  1. Ubuntu打开系统监视器查看进程&资源等信息

    Ubuntu打开系统监视器查看进程&资源等信息 类似于Windows的任务管理器,Ubuntu也提供了系统监视器供用户管理进程及查看系统占用资源等 打开方式,终端输入如下命令: gnome-s ...

  2. Linux 查看进程消耗内存情况总结

    在Linux中,有很多命令或工具查看内存使用情况,今天我们来看看如何查看进程消耗.占用的内存情况,Linux的内存管理和相关概念要比Windows复杂一些.在此之前,我们需要了解一下Linux系统下面 ...

  3. Microsemi Libero使用技巧——查看芯片资源占用情况

    前言 与MCU不同,FPGA的资源主要包括:逻辑资源,IO资源,Flash大小,PLL资源,SoC硬核处理器资源等,其中逻辑资源和IO资源是我们主要关心的,本篇文章将介绍,如何通过Microsemi ...

  4. linux查看进程内存使用情况,以及将线程情况输出文件

    用jmap把进程内存使用情况dump到文件中,再用jhat分析查看.jmap进行dump命令格式如下: jmap -dump:format=b,file=/tmp/dump.dat 21711  -- ...

  5. windows10 查看进程端口的情况

    以程序 winnfsd.exe 为例: 1 查看进程号 PID C:\Users\leo>tasklist|findstr winnfsd.exe winnfsd.exe             ...

  6. linux下查看进程内存使用情况

    1. top命令--动态查看一个进程的内存使用top -d 1 -p pid [,pid ...]  //设置为delay 1s,默认是delay 3s  如果想根据内存使用量进行排序,可以shift ...

  7. [转]linux下查看进程内存使用情况

    动态查看一个进程的内存使用 1.top命令 top -d 1 -p pid [,pid ...] //设置为delay 1s,默认是delay 3s 如果想根据内存使用量进行排序,可以shift + ...

  8. Linux 查看进程资源--ps、top命令

    1,ps命令 ps能够给出当前系统中进程的快照.它能捕获系统在某一事件的进程状态 命令参数:          a                                      显示所有进 ...

  9. nethogs 实时查看进程使用流量情况。

    源码编译安装. 下载地址:http://sourceforge.net/projects/nethogs/?source=directory 下载了 tar 解压. make && m ...

随机推荐

  1. (38)JS运动之淡入淡出

    基本思路:使用样式filter.可是要区分IE浏览器和chrom.firefox的不同,详细也是用定时器来实现. <!DOCTYPE HTML> <!-- --> <ht ...

  2. xml的序列化与反序列化求一个好用的东西,类似,newtonsoft.net转json的东西。xml里面的结构和数据库不一致..................

    xml的序列化与反序列化求一个好用的东西,类似,newtonsoft.net转json的东西.xml里面的结构和数据库不一致..................

  3. 讨论CSS中的各类居中方式

    今天主要谈一谈CSS中的各种居中的办法. 首先是水平居中,最简单的办法当然就是 margin:0 auto; 也就是将margin-left和margin-right属性设置为auto,从而达到水平居 ...

  4. 为什么MathType窗口变灰色

    mathtype是一个功能强大的数学公式编辑器,可以轻松输入各种复杂的公式和符号,与Office文档完美结合,显示效果超好,比Office自带的公式编辑器要强大很多.但我们在使用MathType编辑公 ...

  5. php-fpm配置文件,指定session保存目录

    cd  /etc/php-fpm.d 目录下 cat www.conf文件 修改user ,group 指定session 保存路径 www.conf日志配置路径 php-fpm.conf

  6. 搭建基于 HDFS 碎片文件存储服务

    安装 JDK HDFS 依赖 Java 环境,这里我们使用 yum 安装 JDK 8,在终端中键入如下命令: yum -y install java-1.8.0-openjdk* 使用如下命令查看下 ...

  7. windows,cmd中,如何切换到磁盘的根目录下

    需求描述: 在windows的cmd中操作,有的时候也会遇到切换了很多的目录,然后需要切换到根目录的情况 操作过程: 1.通过cd \的方式,切换回当前磁盘的根目录下 备注:未切换之前,在Driver ...

  8. 扁平化你的Qt应用程序

    什么是扁平化 这里的扁平化指的是交互设计方面的一种风格. 扁平化是随着极简注意的风潮流行起来的,这个概念最核心的地方就是放弃一切装饰效果,诸如阴影.透视,纹理,渐变等等能做出3D效果的元素一概不用.全 ...

  9. Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

    MySQL在linux安装之后,连接到服务,报了下面的错误: ERROR 2002 (HY000): Can't connect to local MySQL server through socke ...

  10. lnmp启动脚本

    #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH # Ch ...