当前位置: 首页 > 编程日记 > 正文

pidstat 命令详解(转载)

转自https://www.jianshu.com/p/3991c0dba094

pidstat 概述

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

pidstat 安装

pidstat 是sysstat软件套件的一部分,sysstat包含很多监控linux系统状态的工具,它能够从大多数linux发行版的软件源中获得。

  • 在Debian/Ubuntu系统中可以使用下面的命令来安装:
    apt-get install sysstat
  • CentOS/Fedora/RHEL版本的linux中则使用下面的命令:
    yum install sysstat

pidstat 示例

pidstat 的用法:

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:显示命令名和所有参数

示例一:查看所有进程的 CPU 使用情况( -u -p ALL)

pidstat
pidstat -u -p ALL

pidstat 和 pidstat -u -p ALL 是等效的。
pidstat 默认显示了所有进程的cpu使用率。

详细说明

  • PID:进程ID
  • %usr:进程在用户空间占用cpu的百分比
  • %system:进程在内核空间占用cpu的百分比
  • %guest:进程在虚拟机占用cpu的百分比
  • %CPU:进程占用cpu的百分比
  • CPU:处理进程的cpu编号
  • Command:当前进程对应的命令

示例二: cpu使用情况统计(-u)

pidstat -u

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

示例三: 内存使用情况统计(-r)

pidstat -r

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

  • PID:进程标识符
  • Minflt/s:任务每秒发生的次要错误,不需要从磁盘中加载页
  • Majflt/s:任务每秒发生的主要错误,需要从磁盘中加载页
  • VSZ:虚拟地址大小,虚拟内存的使用KB
  • RSS:常驻集合大小,非交换区五里内存使用KB
  • Command:task命令名

示例四:显示各个进程的IO使用情况(-d)

pidstat -d

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

  • PID:进程id
  • kB_rd/s:每秒从磁盘读取的KB
  • kB_wr/s:每秒写入磁盘KB
  • kB_ccwr/s:任务取消的写入磁盘的KB。当任务截断脏的pagecache的时候会发生。
  • COMMAND:task的命令名

示例五:显示每个进程的上下文切换情况(-w)

pidstat -w -p 2831
  • PID:进程id
  • Cswch/s:每秒主动任务上下文切换数量
  • Nvcswch/s:每秒被动任务上下文切换数量
  • Command:命令名

示例六:显示选择任务的线程的统计信息外的额外信息 (-t)

pidstat -t -p 2831
  • TGID:主线程的表示
  • TID:线程id
  • %usr:进程在用户空间占用cpu的百分比
  • %system:进程在内核空间占用cpu的百分比
  • %guest:进程在虚拟机占用cpu的百分比
  • %CPU:进程占用cpu的百分比
  • CPU:处理进程的cpu编号
  • Command:当前进程对应的命令

示例七:pidstat -T

pidstat -T TASK
pidstat -T CHILD
pidstat -T ALL

TASK表示报告独立的task。
CHILD关键字表示报告进程下所有线程统计信息。
ALL表示报告独立的task和task下面的所有线程。

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

    • PID:进程id
    • Usr-ms:任务和子线程在用户级别使用的毫秒数。
    • System-ms:任务和子线程在系统级别使用的毫秒数。
    • Guest-ms:任务和子线程在虚拟机(running a virtual processor)使用的毫秒数。
    • Command:命令名

转载于:https://www.cnblogs.com/wx170119/p/11411312.html

相关文章:

Oracle中table的大小计算方式

1. Check the size of each table on specific schema ; SQL> select segment_name,bytes/1024/1024 as mb from user_segments; SEGMENT_NAME MB -------------------- ---------- SALES 542. 转载于:https://www.cnblogs.com/jeff…

python编码问题无法复现_Python编码问题详解

1. 基本概念 字符集&#xff08;Character set&#xff09; 解释&#xff1a;文字和符合的总称 常见字符集&#xff1a; Unicode字符集 ASCII字符集&#xff08;Unicode子集&#xff09; GB2312字符集 编码方法&#xff08;Encoding&#xff09; 解释&#xff1a;将字符对应到字…

重新开始 2011/11/25

在csdn上写过几篇文章&#xff0c;始终没有坚持下来&#xff0c;也是由于自己没有一个明确的目标的缘故&#xff1b;当自己感觉乱的时候&#xff0c;总是想改变点东西&#xff0c;重新开始&#xff0c;改变了博客类的东西就真的能重新开始吗&#xff1f;现在我想换个博客就换个…

【转载】springboot:如何优雅的使用mybatis

这两天启动了一个新项目因为项目组成员一直都使用的是mybatis&#xff0c;虽然个人比较喜欢jpa这种极简的模式&#xff0c;但是为了项目保持统一性技术选型还是定了 mybatis。到网上找了一下关于spring boot和mybatis组合的相关资料&#xff0c;各种各样的形式都有&#xff0c;…

c3p0连接池用法

使用连接池的时候并不是在代码中不用获取/释放数据库连接&#xff0c;而是在代码中向连接池申请/释放连接&#xff0c;对于代码而言&#xff0c;可以把连接池看成数据库。 换句话说&#xff0c;连接池就是数据库的代理&#xff0c;之所以要使用这个代理是因为直接向数据库申请/…

我所理解的字符编码

1&#xff0c;Ascii和ebcic. 为了方便交流&#xff0c;美国人发明了ASCII编码&#xff0c;后来被确认为国际标准。后来以发明了EBCDIC编码。 一般地说&#xff0c;开放的操作系统&#xff08;LINUX 、WINDOWS等&#xff09;采用ASCII 编码&#xff0c;而大型主机系统&#xff0…

void函数调用时显示不允许使用不完整的_C语言的角落——这些C语言不常用的特性你知道吗?...

变长参数列表头文件定义了一些宏&#xff0c;当函数参数未知时去获取函数的参数变量&#xff1a;typedef va_list宏&#xff1a;va_start()va_arg()va_end()va_list类型通过stdarg宏定义来访问一个函数的参数表&#xff0c;参数列表的末尾会用省略号省略 (va_list用来保存va_st…

centos下为firefox安装flash插件的几种方法

首先去官网去下载RPM格式的安装包&#xff0c;比如&#xff1a;flash-plugin-11.1.102.55-release.i386.rpm&#xff0c;默认下载位置是该用户的下载文件夹。 方法一&#xff1a;用gnome 双击该文件&#xff0c;按提示操作即可。 方法二&#xff1a;命令行&#xff0c;在该文件…

eoLinker AMS 专业版V3.3发布:分享项目可以测试并选择分享内容等

eoLinker AMS是集API文档管理、API自动化测试、开发协作三位一体的综合API开发管理平台&#xff0c;是中国最大的在线API管理平台。目前eoLinker AMS已经为来自全球的超过两万家企业托管超过一百万的API&#xff0c;我们感谢每个曾经以及正在支持我们的企业以及开发者朋友&…

MyBatis基础-CRUD

一、mybatis 环境搭建步骤 第一步&#xff1a;创建 maven 工程第二步&#xff1a;导入坐标第三步&#xff1a;编写必要代码&#xff08;实体类和持久层接口&#xff09;第四步&#xff1a;编写 SqlMapConfig.xml第五步&#xff1a;编写映射配置文件第六步&#xff1a;编写测…

python答题系统的代码_Python考试系统自动答题(教务处)

要求 某学校要求登录教务处网站 做一个测试题 30分钟300道题&#xff0c;240分几个&#xff0c;题量不少&#xff0c;题还不好做。 研究发现原来在网站上有题库 但是一道题只有6s 的时间作答 边查边做时间不够 人生苦短&#xff0c;何不Python当歌&#xff1f; 来个自动答题的智…

((ios开发学习笔记九)) Simple TableView 实现(附 实例源码)

实现效果&#xff1a; 实现过程&#xff1a; Step One 创建单个窗体项目 Step Two 创建control 接口 Step Three 创建窗体和关联关系 Step four 实现table view 的接口 control 初始化选择数据 实现Data Source 部分 实现TableView委托部分 源码下载 TestTableView.zip转载于:…

24个为Web开发人员准备的CSS3实用教程

本文搜集了一些关于CSS3的最新教程。你可以根据这些教程或技术来实现网页设计&#xff0c;包括&#xff1a;文字阴影、圆角框、盒模型尺寸计算&#xff08;box sizing&#xff09;、透明效果处理、多重背景、边框图像等。以下这些都是非常实用的CSS3教程&#xff0c;提供了许多…

前端基础之JQuery

一、什么是JQuery &#xff3b;1&#xff3d; jQuery由美国人John Resig创建&#xff0c;至今已吸引了来自世界各地的众多 javascript高手加入其team。 &#xff3b;2&#xff3d; jQuery是一种新型的JavaScript库。jq是用js写的&#xff0c;能用jq实现&#xff0c;用js都能…

测试linux下磁盘的读写速率

1&#xff09; 通过df -h命令查看磁盘情况Filesystem Size Used Avail Use% Mounted on/dev/sda4 289G 61G 214G 23% /tmpfs 7.8G 0 7.8G 0% /dev/shm/dev/sda2 969M 62M 857M 7% /boot/dev/sda1 …

multipart request_Request和Response

Response讲解7.1 Response简介定义辅助 servlet 将响应发送到客户端的对象。servlet 容器创建 ServletResponse 对象&#xff0c;并将它作为参数传递给 servlet 的 service 方法。 要发送 MIME 正文响应中的二进制数据&#xff0c;请使用 #getOutputStream 返回的 ServletOutpu…

SharePoint 客户端经常弹出Windows验证登录框问题

场景描述&#xff1a; Site工作人员UserA创建了一个Task&#xff0c;并且Assign给UserB。UserB接到来自Task List的邮件通知。这时UserA发现Assign的人错了&#xff0c;重新修改Task Item&#xff0c;将任务重新Assign给另外一个用户UserC&#xff0c;并且同时收回了UserB的访问…

SkFlattenable /Registrar/

/** \class SkFlattenableSkFlattenable is the base class for objects that need to be flattenedinto a data stream for either transport or as part of the key to thefont cache.*/ class SK_API SkFlattenable : public SkRefCnt {}以SkFlattenable为基类的对象是&…

启动 ServiceFabric Windows服务报1053

Remote Procedure Call (RPC) Locator和 Windows Firewall是否启动。 以管理员身份运行PowerShell&#xff0c;输入Unregister-ScheduledTask FabricCounters&#xff0c;然后输入Y。 到这一步基本OK了 右下角reset sf后查看是否存在 X:\SfDevCluster\Data\ImageStoreShare 文件…

Spring基础面试题(一)

Spring是什么&#xff1f;Spring是一个轻量级的IoC和AOP容器框架。是为Java应用程序提供基础性服务的一套框架&#xff0c;目的是用于简化企业应用程序的开发&#xff0c;它使得开发者只需要关心业务需求。常见的配置方式有三种&#xff1a;基于XML的配置、基于注解的配置、基于…

C#线程间操作无效: 从不是创建控件 XX 的线程访问它

转自&#xff1a;http://www.arasplm.net/index.php/zh/community/myblog/c-xx-.html 前些天做的要使用到线程的项目&#xff0c;现在和大家分享一下感受&#xff01; 以下面小列子为例&#xff0c;给出这个问题的解决办法。下面的列子是以一个计数器为列讲解的。 public Form1…

boost安装_【环境搭建】源码安装Boost

写C的话boost是必不可少的&#xff0c;本文将boost的安装过程用写成脚本&#xff0c;直接一行命令解决整个编译安装过程&#xff1a;sudo bash boost-linux-installer.sh下面是boost-linux-installer.sh的内容&#xff1a;#!/usr/bin/env bash

css新闻列表优化-突破思维新方法更利于搜索引擎

效果图如下&#xff1a; 也许你会认为这个是很简单的&#xff0c;呵呵那是因为一般写这个列表的时候用的都是时间写在前面&#xff0c;标题写在后面&#xff0c;那样对于显示来说是先有时间后有标题的&#xff0c;对搜索引擎不是很友好。 老方法大概是这样的&#xff1a; html代…

STL使用记录

1&#xff0c;map 对map实在不熟。。。赶紧记录一下用法吧。 后来再发现新的用法再补充吧 定义&#xff1a; map<int, int> m; 其中的int可以为自定义的任何类型。 m[key值类型的变量] value值&#xff1b; 但是注意如果key值是自定义的结构体的话&#xff0c;一定要重载…

Linux tcpdump命令详解与Wireshark

简介 用简单的话来定义tcpdump&#xff0c;就是&#xff1a;dump the traffic on a network&#xff0c;根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过…

dubbo yml配置_利用springboot+dubbo,构建分布式微服务,全程注解开发(一)

随着互联网的发展&#xff0c;网站应用的规模不断扩大&#xff0c;常规的垂直应用架构已无法应对&#xff0c;分布式服务架构以及流动计算架构势在必行&#xff0c;亟需一个治理系统确保架构有条不紊的演进。一、先来一张图说起 Dubbo&#xff0c;相信大家都不会陌生&#xff0…

treeview 保持选中状态

发现当treeview控件失去焦点的时候&#xff0c;会丢失选中状态的指示&#xff08;条目的蓝色背景&#xff09;。如果想要保持&#xff0c;只要设置treeview的一个属性即可&#xff1a; this.treeView1.HideSelection false; 但是&#xff0c;发现阴影很浅&#xff0c;但是聊胜…

1-2-Active Directory 域服务准备概述

参照: http://technet.microsoft.com/zh-cn/library/gg398869.aspx Active Directory 域服务准备概述 上一次修改主题&#xff1a; 2010-12-09 要为 Microsoft Lync Server 2010 部署准备 Active Directory 域服务 (AD DS)&#xff0c;必须按照特定顺序执行三个步骤。 下表介绍…

iOS----------拨打电话的3种方式

iOS实现拨打电话的方式&#xff1a;方法一、requestWithURL&#xff0c;此方法拨打前弹出提示NSMutableString * string [[NSMutableString alloc] initWithFormat:"tel:%","136****0000"];UIWebView * callWebview [[UIWebView alloc] init];[callWebvi…

linux命令 iperf-网络性能测试工具

iperf命令是一个网络性能测试工具。iperf可以测试TCP和UDP带宽质量。iperf可以测量最大TCP带宽&#xff0c;具有多种参数和UDP特性。iperf可以报告带宽&#xff0c;延迟抖动和数据包丢失。利用iperf这一特性&#xff0c;可以用来测试一些网络设备如路由器&#xff0c;防火墙&am…