linux查看资源使用情况

top -c # 查看资源使用情况
top

输出如下内容

top - 14:54:21 up 95 days, 20:03,  3 users,  load average: 2072.21, 1241.33, 1244.76
Tasks: 1071 total, 459 running, 610 sleeping, 2 stopped, 0 zombie
%Cpu(s): 12.4 us, 36.1 sy, 0.0 ni, 51.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 515457.4 total, 330572.6 free, 127919.9 used, 56965.0 buff/cache
MiB Swap: 0.0 total, 0.0 free, 0.0 used. 381876.9 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
109931 20 0 1151960 101916 30340 R 45.9 0.0 35:01.51 /home/
110902 20 0 1150032 99684 29548 R 43.7 0.0 36:25.97
  • 第一行:系统时间 + 系统已经运行时间 + 目前几个用户登录系统 + 1/5/15分钟系统负载平均值

    负载值表示系统正在运行的进程数,这些进程在等待 CPU 或 I/O 的时间。通常情况下,负载值应该在CPU核心数的范围内。

  • 第二行:total总进程数 + 正在运行进程数 + 睡眠状态进程数 + 停止的进程数 + 僵尸进程数(zombie)

    僵尸进程:即已经结束但是父进程还没有读取到退出状态的进程。

  • 第三行:us用户空间CPU占比 + sy内核空间CPU占比 + ni 用于优先级别较低的进程的用户空间CPU占比 + id CPU空闲比 + 等待I/O的CPU时间比 + hi 硬中断处理百分比 + si 软中断处理百分比 + st 被虚拟化软件(如虚拟机)偷取的CPU时间百分比

    hi(hardware IRQ) 硬中断

    si(software IRQ) 软中断

  • 第四行 Mem:物理内存大小 + 可用物理内存大小 + 已使用物理内存大小 + 用于缓冲和缓存的内存大小

  • 第五行 Swap:交换空间的总大小 + 可用交换空间大小 + 已使用交换空间大小 + 可用于系统使用的内存大小

  • 第六行:

    • PID:进程ID
    • USER:进程所属用户
    • PR:进程优先级
    • NI:进程的nice值
    • VIRT:进程的虚拟内存大小
    • RES:进程占用的物理内存大小
    • SHR:进程使用的共享内存大小
    • S:进程状态(运行--R,睡眠--S,停止--T)
    • %CPU:进程使用的CPU百分比
    • %MEN:进程占用内存百分比
    • TIME+:进程占用的CPU时间
    • COMMAND:进程的命令
P # 输入P将会按照%CPU使用率排序

然后根据最耗费CPU的进程定位该进程下耗费CPU的线程,然后输入P对线程进行排序

top -Hp pid

P

由于Liunx中PID为十进制,先转换成十六进制

printf"%x\n" tid

然后使用指令查看高CPU线程的堆栈信息,打印出代码中哪些方法导致CPU较高的。

jstack pid | grep tid -C5 --color

这是java里的。

linux查看资源使用情况的更多相关文章

  1. linux查看资源占用情况

    在Linux中查看占用空间大文件 查看当前目录总共占的容量.而不单独列出各子项占用的容量$ du -sh查看当前目录下一级子文件和子目录占用的磁盘容量.$ du -lh --max-depth=1结果 ...

  2. Linux 查看磁盘使用情况

    Linux 查看磁盘使用情况 df 查看当前挂载空间使用情况 语法: df [选项]... [FILE]... 文件-a, --all 包含所有的具有 0 Blocks 的文件系统 文件--block ...

  3. Netstat -tln 命令是Linux查看端口使用情况

    Netstat -tln 命令是Linux查看端口使用情况

  4. linux(8)Linux 查看端口占用情况

    前言 平常使用linux,我们经常需要查看哪个服务占用了哪个端口,接下来就为大家介绍了2种 Linux 查看端口占用情况可以使用 lsof 和 netstat 命令. 1. lsof -i:端口号 用 ...

  5. 【转】Linux 查看端口占用情况

    Linux 查看端口占用情况可以使用 lsof 和 netstat 命令. lsof lsof(list open files)是一个列出当前系统打开文件的工具. lsof 查看端口占用语法格式: l ...

  6. Linux查看内存使用情况

    输入:top PID:进程的ID USER:进程所有 PR:进程的优先级别,越小越优先被执 NInice: VIRT:进程占用的虚拟内 RES:进程占用的物理内 SHR:进程使用的共享内 S:进程的状 ...

  7. 【查看内存】Linux查看内存使用情况(二)

    Linux查看CPU和内存使用情况:http://www.cnblogs.com/xd502djj/archive/2011/03/01/1968041.html 在做Linux系统优化的时候,物理内 ...

  8. 26. linux查看端口占用情况

    linux系统下,查看端口占用情况的命令:lsof -i[root@www ~]# lsof -i

  9. linux查看磁盘使用情况

    # 查看磁盘使用情况 $ df -l # 查看某个目录在哪个分区,比如查看/root文件夹在哪个分区 $ df /root # 查看linux系统具体分区情况 $ fdisk -l

  10. linux 查看硬盘使用情况

    在windows系统中,我们可以很容易的查看磁盘的使用情况,在linux系统中,我们可以使用命令来查看磁盘使用情况. 1.df命令 作用:用来查看硬盘的挂载点,以及对应的硬盘容量信息.包括硬盘的总大小 ...

随机推荐

  1. Centos中安装deb报错

    centos7中安装deb包   概要:deb包和rpm包区别:deb后缀的软件包是for Debian系的(包括Ubuntu),不是给centos安装的:rpm后缀的软件包才是for Redhat系 ...

  2. Ubuntu20.04安装记录

    在Ubuntu下将iso文件刻录到U盘, 可以使用系统自带的Startup Disk Creator. 分区方式 使用整个硬盘, 一个512G SSD, 使用默认的分区方式, 会创建一个512M的EF ...

  3. Working with Dates in PL/SQL(PL/SQL中使用日期)

    Working with Dates in PL/SQL By Steven Feuerstein  史蒂芬.佛伊尔斯坦 The previous articles in this introduct ...

  4. C++中两种获取UUID的方法(编程)

    第一种,依托WMI #define _WIN32_DCOM #include <iostream> using namespace std; #include <comdef.h&g ...

  5. 原来你是这样的JAVA--[07]聊聊Integer和BigDecimal

    今天来聊聊Java中跟数值处理相关的两个类型Integer和BigDecimal. 说起这两个类型,我们肯定都不陌生,但是其中有些容易踩到的坑需要注意避让. Integer 整型我们应该每天都会用到, ...

  6. 案例分享:Qt激光加工焊接设备信息化软件研发(西门子PLC,mysql数据库,用户权限控制,界面设计,参数定制,播放器,二维图,rgv小车,期限控制,参数调试等)

    需求   1.键鼠控制,承担ui界面设计,布局兼容分辨率1024x768 ~ 1920x1080.  2.权限控制:三种权限,分为管理员(可以定制模块界面,修改产品名称等定制化软件和其他权限,同时具备 ...

  7. java+mysql学生信息管理系统

    实现:mysql+eclipse(idea设置之后也可运行)+jdk8 功能: 管理员:管理登+管理员注册 学生:添加学生信息+删除学生信息+修改学生信息+查询学生信息+学生列表展示 界面展示: 详情 ...

  8. 我的第一个项目(八):(解决问题)图片资源无法加载(Error: Cannot find module "../../xxx" )

    好家伙,问题一堆   先开一个测试页模拟游戏模块的运行 原先的图片初始化方法失效了,(vue里面自然是用不了这种方法的) function createImage(src) { let img; if ...

  9. 【Azure API 管理】APIM中证书更新问题

    问题描述 每一年到期更新域名证书,APIM会中断服务,请问如何不中断服务? 问题解答 Azure API 管理允许在受信任的根证书和中间证书存储中的计算机上安装 CA 证书,分配证书的过程可能需要 1 ...

  10. 【Azure 事件中心】从Azure Event Hub中消费数据,如何查看当前消费客户端消费数据的Offset和SequenceNumber呢(消息偏移量和序列号)?

    问题描述 当通过Azure Event Hub SDK消费Event Hub中的消息时,必须指定一个Storage Account(存储账号)用于保存 Checkpoint (检查点). 比如在C#代 ...