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. Linux 中竖线“|”与双竖线“||”的意思

    linux中竖线'|',双竖线'||',&和&&的意思 对于初学者来说这几个意思可能只知道其中几个的意思,下面我们来看一下. 1.竖线'|' ,在linux中是作为管道符的,将 ...

  2. MySQL8.0使用mysqlsh配置主从复制 InnoDB ReplicaSet

    InnoDB ReplicaSet InnoDB ReplicaSet 由一个主节点和多个从节点构成. 可以使用ReplicaSet对象和AdminAPI操作管理复制集, 例如检查InnoDB复制集的 ...

  3. Ubuntu20.04下的ESP8266环境

    硬件说明 ESP8266使用的是3.3V供电, 和Arduino不一样, ESP8266的I/O脚是不能防5V的, 连上就烧. 其输出只有12mA, 而Arduino是20-40mA. ESP8266 ...

  4. Java设计模式-组合模式Composite

    介绍 组合模式(Composite Pattern),又叫部分整体模式,它创建了对象组的树形结构,将对象组合成树状结构以表示"整体-部分"的层次关系. 组合模式依据树形结构来组合对 ...

  5. python第五章pta习题总结

    四.编程部分 1.sorted函数: sorted(iterable, cmp=None, key=None, reverse=False) #iterable:可迭代的对象 #cmp:比较规则 #k ...

  6. Java 中拼接 String 的 N 种方式

    文章持续更新,可以关注公众号程序猿阿朗或访问未读代码博客. 本文 Github.com/niumoo/JavaNotes 已经收录,欢迎Star. 1. 前言 Java 提供了拼接 String 字符 ...

  7. java怎么打印一个对象的内存地址

    在Java一般使用HashCode来代表对象的地址,但是两个相同的对象就不行了,两个相同的对象的hashcode是相同的. 如果要对比两个相同的对象的地址可以使用,System.identityHas ...

  8. nuxt调用weixin-js-sdk

    在nuxt中调用weixin-js-sdk与在vue中有所不同. 通常在vue中用 import wx from 'weixin-js-sdk' 调用weixin-js-sdk,但在nuxt中会出现w ...

  9. 【防忘笔记】一个例子理解Pytorch中一维卷积nn.Conv1d

    一维卷积层的各项参数如下 torch.nn.Conv1d(in_channels, out_channels, kernel_size, stride=1, padding=0, dilation=1 ...

  10. 【Azure Function App】Java Function在运行中遇见内存不足的错误

    问题描述 在Function的Code+Test界面进行函数触发可以成功.因为Function为Blob Trigger,当在Blob容器下上传文件后,Function可以被正常触发但是报 outof ...