016 Linux 卧槽,看懂进程信息也不难嘛?top、ps
https://my.oschina.net/u/3113381/blog/5455267

1 扒开看看 top 命令参数详情

Linux top 命令用于实时显示 process 的动态详情。

第一行,[top -] 任务队列信息

系统时间:07:27:05
运行时间(系统已开机多长时间):up 1:57 min
当前登录用户数:3 user
cpu 平均负载:load average: 0.00, 0.00, 0.00
//三个数值分别为,1分钟,5分钟,15分钟的负载情况

第二行,[Tasks] 任务(进程)

总进程数:150 total,
正在运行的进程数:1 running,
睡眠的进程数:149 sleeping,
停止的进程数: 0 stopped,
僵尸进程数: 0 zombie

第三行,[Cpu (s)] 状态信息

0.0%us【user space】— 用户空间占用CPU的百分比。
0.3%sy【sysctl】— 系统内核占用CPU的百分比。
0.0%ni【】— 改变过优先级的进程占用CPU的百分比
99.7%id【idolt】— 空闲CPU百分比
0.0%wa【wait】— IO等待占用CPU的百分比
0.0%hi【Hardware IRQ】— 硬中断占用CPU的百分比
0.0%si【Software Interrupts】— 软中断占用CPU的百分比

第四行,[Mem] 内存状态

//total:总内存大小,used:已使用的内存,free:空闲的内存,buffers:缓存的内存大小
1003020k total,   234464k used,   777824k free,    24084k buffers

第五行,[Swap] 虚拟内存交换分区信息

//total:交换区总量;used:使用的交换区总量;free:空闲交换区总量;cached:缓存的交换区总量
2031612k total,      536k used,  2031076k free,   505864k cached

第六行,空行

第七行以下:各进程(任务)的状态监控

PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)

2 top 的一些常用交互命令和使用案例

top 命令,然后按数字 "1" 可监控每个逻辑CPU的状况
q # 退出程序
m # 切换显示内存信息
M # 根据驻留内存大小进行排序
t # 切换显示进程和CPU状态信息
P # 根据CPU使用百分比大小进行排序
top -d 3 # 表示更新周期为3秒
top -p 11 # 显示进程号为11的进程信息,CPU、内存占用率等

3 top 命令里面的 buffer 和 cache 区别?

Stack Exchange 对这个的讨论贴 what-do-the-buff-cache-and-avail-mem-fields-in-top-mean

摘取关键信息

buffers
Memory used by kernel buffers (Buffers in /proc/meminfo) cache
Memory used by the page cache and slabs (Cached and SReclaimable in /proc/meminfo)
buff/cache buff/cache
Sum of buffers and cache

4 ps 命令常用案例和参数说明

Linux ps (process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。

ps -aux |grep {要查找的进程}

示例:ps -aux|grep zookeeper
# 最常用的方法是 ps -aux,结合 grep 去查找特定的进程。
#-a 代表 all。
#-u 以用户为主的格式来显示程序状况。
#-x 显示所有程序,不以终端机来区分。

ps -ef |grep {要查找的进程}

示例:ps -ef | grep zookeeper
# -e 和 -a 的意思是一样的,即显示有关其他用户进程的信息,包括那些没有控制终端的进程。
# -f 显示用户id,进程id,父进程id,最近CPU使用情况,进程开始时间等等。

ps 命令其它常用案例

# 显示 root 用户进程信息
ps -u root # 结合 less 命令和管道来使用
ps -aux |less # 根据 CPU 使用来升序排序
ps -aux --sort -pcpu | less # 根据内存使用来升序排序
ps -aux --sort -pmem | less # 结合 head,只显示前十个
ps -aux --sort -pcpu,+pmem | head -n 10

5 小结

Linux 看懂进程状况信息也不难嘛?top、ps 两个就满足一般使用!

[转帖]016 Linux 卧槽,看懂进程信息也不难嘛?top、ps的更多相关文章

  1. 016 Linux 卧槽,看懂进程信息也不难嘛?top、ps

    目录 1 扒开看看 top 命令参数详情 第一行,[top - ]任务队列信息 第二行,[Tasks] 任务(进程) 第三行,[Cpu(s)]状态信息 第四行,[Mem]内存状态 第五行,[Swap] ...

  2. 【转帖】一文看懂docker容器技术架构及其中的各个模块

    一文看懂docker容器技术架构及其中的各个模块 原创 波波说运维 2019-09-29 00:01:00 https://www.toutiao.com/a6740234030798602763/ ...

  3. [转帖]两张图看懂GDT、GDTR、LDT、LDTR的关系

    两张图看懂GDT.GDTR.LDT.LDTR的关系 2018-06-09 18:13:53 Six_666A 阅读数 2044更多 分类专栏: 深入理解linux内核   转自:http://ju.o ...

  4. Linux常用命令 查看进程信息时 copy的-----温故而知新

    1.查进程    ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括其他用户的程序.    ps -A 显示所有程序.    ps c 列出程序时,显示每个程序真正的 ...

  5. Linux查看端口、进程信息

    1.linux上如何查看端口 通常情况下,某个端口号会被莫名其妙的占用了.却不知道什么东东占用了,影响心情.通过如下命令,即可查看某一个端口号是否被占用 1)lsof -i:端口号,即可查看某一端口的 ...

  6. 一篇文章带你看懂Cloudflare信息泄露事件

    版权声明:本文由贺嘉  原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/753847001488039974 来源:腾云阁  ...

  7. 查看CPU 内存 硬盘 网络 查看进程使用的文件 uptime top ps -aux vmstat iostat iotop nload iptraf nethogs

    #安装命令 yum install  sysstat #包含 iostat vmstat yum install iotop yum install  nload yum install iptraf ...

  8. Linux内存点滴 用户进程内存空间

    Linux内存点滴 用户进程内存空间 经常使用top命令了解进程信息,其中包括内存方面的信息.命令top帮助文档是这么解释各个字段的. VIRT, Virtual Image (kb) RES, Re ...

  9. linux上限制用户进程数、cpu占用率、内存使用率

    限制进程CPU占用率的问题,给出了一个shell脚本代码如下: renice +10 `ps aux | awk '{ if ($3 > 0.8 && id -u $1 > ...

  10. Linux下查看USB设备信息

    首先需要将usbfs挂载一下,然后才能查看.$ mount -t usbfs none /proc/bus/usb$ cat  /proc/bus/usb/devices或者在文件(/etc/fsta ...

随机推荐

  1. 华为云云原生视窗:一文回顾Q1精彩瞬间

    摘要:一文速览2023年Q1期间华为云云原生相关动态信息. 华为云云原生动态 华为云海外首发CCI Serverless容器服务 在MWC23 巴展期间,华为云海外首发CCI Serverless容器 ...

  2. Python图像处理丨基于K-Means聚类的图像区域分割

    摘要:本篇文章主要讲解基于理论的图像分割方法,通过K-Means聚类算法实现图像分割或颜色分层处理. 本文分享自华为云社区<[Python图像处理] 十九.图像分割之基于K-Means聚类的区域 ...

  3. 面试官问:mysql中时间日期类型和字符串类型的选择

    摘要:MySQL中有多种表示时间日期的数据类型,主要有YEAR.TIME.DATE.DATETIME.TIMESTAMP等 本文分享自华为云社区<一针见血,mysql中时间日期类型和字符串类型的 ...

  4. webpack性能优化(1):分隔/分包/异步加载+组件与路由懒加载

    webpack ensure相信大家都听过.有人称它为异步加载,也有人说做代码切割,那这个家伙到底是用来干嘛的?其实说白了,它就是把js模块给独立导出一个.js文件的,然后使用这个模块的时候,webp ...

  5. 复杂 A/B 实验如何设计?火山引擎 DataTester 帮你落地!

    数字化转型时代,越来越多企业将目光聚焦于"数据驱动增长"的实践上,A/B 实验则在其中扮演着愈加重要的角色. A/B 实验又称对照试验,但并非人们字面认知的"抛出 A 和 ...

  6. 火山引擎 DataLeap 下 Notebook 系列文章三:架构升级详解

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 当使用 Notebook 的项目日渐增加时,火山引擎 DataLeap 研发团队发现运行中的 PaaS 服务实在太 ...

  7. kubernetes实战(三十一):Prometheus监控Windows主机

    1. 基本说明 使用Prometheus监控Windows主机和Linux主机并无太大区别,都是使用社区的Exporter进行采集数据,之后暴露一个接口,可以让Prometheus采集到主机的数据. ...

  8. 创建DOM节点时出现错误信息:box.appendChild is not a function

    1.代码正常书写如下 <div class="box"></div> <!-- JavaScript代码 --> <script> ...

  9. acwing算法提高课程笔记—数字三角形模型,最长上升子序列模型

    转自自网络,仅作为学习使用 1015摘花生 /*Hello Kitty想摘点花生送给她喜欢的米老鼠. 她来到一片有网格状道路的矩形花生地(如下图),从西北角进去,东南角出来. 地里每个道路的交叉点上都 ...

  10. sprint-boot 存储图片的base64

    需求:将前端上传的图片转换成base64码发送到后端存储到数据库中(oracle或者mysql) 问题:当图片大小比较大(大概是超过1M)后端接收到的数据就会有错误. 解决方法:  sprint-bo ...