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. idea自定义代码片段live template

    1.介绍 有时在idea编辑器经常会写同一个代码块,那么这个代码块就可以利用live template功能把它定义成可根据关键字触发的代码片段,效果如下图: 2.操作步骤 此处我们就以springbo ...

  2. 使用Gulp压缩静态资源

    如果希望对在静态页面中引入的相关资源进行压缩(比如:CSS,JavaScript,图片等),可以使用Gulp实现. 当然,还可以使用其他打包工具,比如:Grunt,Webpack等等. Gulp是什么 ...

  3. postgresql表结构查询sql

    数据库表结构查询sql SELECT t1.attnum as "序号", t1.attname as "字段名", concat_ws ( '', t2.ty ...

  4. React之父组件向子组件传值

    class Parent extends React.Component{ constructor(){ super(); this.state={co:"red"} } rend ...

  5. 第141篇:微信小程序wx.request接口报错(errno: 600001, errMsg: "request:fail -2:net::ERR_FAILED")

    好家伙,   来看看报错 报错如下:   请求发送部分,代码如下: uni.request({ url: self.serverUrl + "/getRealName", meth ...

  6. Html飞机大战(十二): canvas写字(结束状态的编辑)

    好家伙,基本的功能都做完了,来补充一个结束状态的游戏结束文案   上代码: case END: //给我的画笔设置一个字的样式 //后面写出来的字都是这个样式的 context.font = &quo ...

  7. 【Azure Developer】Go语言调用Azure SDK如何登录到中国区Azure环境

    问题描述 在 "使用 Azure SDK for Go 进行 Azure 身份验证" 文章中的 Go 示例代码进行登录Azure时,默认指向的是Globa Azure.当只修改AA ...

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

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

  9. 聊聊图数据库和图数据库的小知识 Vol.02

    2010 年前后,对于社交媒体网络研究的兴起带动了图计算的大规模应用. 2000 年前后热门的是 信息检索 和 分析 ,主要是 Google 的带动,以及 Amazon 的 e-commerce 所用 ...

  10. mysql-查询库中所有表名称或者某一张表的所有字段名称

    -- 查询某一库中所有表的名称, SELECT a.TABLE_SCHEMA ,a.TABLE_NAME ,a.TABLE_COMMENT FROM information_schema.TABLES ...