之前在学校实验室工作的时候,接触的第一个命令就是htop。之前就是觉得这个花花绿绿的界面很有趣(牛逼),如下图,常常在女朋友面前故作牛逼的打开(实际就看看我的程序在不在跑,虚伪的不行🤪)
为了以后装逼更有资本,我觉得得仔细弄清楚这些值到底是干什么的
本篇文章参考
Understanding Output of htop Command - Linux Togetherlinuxtogether.org
htop是top的升级版,允许用户监视系统上运行的进程及其完整的命令行
- 系统不会自带,若是Ubuntu,sudo apt, 若是Centos, yum 可以安装。根据不过系统来进行安装
- 支持用户交互,可以通过鼠标来kill进程而不用通过输入其PID,支持用鼠标上下拖动,且不同的颜色代表不同的意思。
- 允许用户根据CPU,内存和时间间隔对进程进行排序
htop 的安装
Ubuntu 安装
1 | sudo apt install htop |
CentOS 安装
http://www.vue5.com/centos/23046.html
基本的概念
tasks/process 进程, thread 线程相关的知识可以从下面的链接学习
宇宙之一粟:为什么校招面试中“线程与进程的区别”老是被问到?我该如何回答?
Difference between Process and Thread - GeeksforGeeks
红色边框
数字1,2,3,4分别代表CPU处理器/核,上图是一个四核的处理器
灰色边框(progress bar)
每一个CPU的总用量情况,注意这条上面会有不同的颜色:
- 蓝色:显示低优先级(low priority)进程使用的CPU百分比。
- 绿色:显示用于普通用户(user)拥有的进程的CPU百分比。
- 红色:显示系统进程(kernel threads)使用的CPU百分比。
- 橙色:显示IRQ时间使用的CPU百分比。
- 洋红色(Magenta):显示Soft IRQ时间消耗的CPU百分比。
- 灰色:显示IO等待时间消耗的CPU百分比。
- 青色:显示窃取时间(Steal time)消耗的CPU百分比。
黄色边框
提供了内存(Memory)和交换(Swap)使用情况。 类似于CPU中的进度条,内存监视也包含具有多种颜色的进度条:
- 绿色:显示内存页面占用的RAM百分比
- 蓝色:显示缓冲区页面占用的RAM百分比
- 橙色:显示缓存页面占用的RAM百分比
蓝色边框
第一行 (Tasks, thr, running)
参考上面的屏幕截图,我们在计算机上运行的106个任务(tasks)被分解为113个线程(thread),其中只有1个进程处于运行(running)状态。
任务(tasks)是打开的进程总数的代表,但并不是每个打开的进程都在不断消耗CPU。 每个进程都处于几种状态
R: Running:表示进程(process)正在使用CPU
S: Sleeping: 通常进程在大多数时间都处于睡眠状态,并以固定的时间间隔执行小检查,或者等待用户输入后再返回运行状态。
T/S: Traced/Stoped: 表示进程正在处于暂停的状态
Z:Zombie or defunct:已完成执行但在进程表中仍具有条目的进程。
第二行 Load Average
三个值是指系统在最后1分钟,最近5分钟和最后15分钟的平均负载 (0.21,0.19,0.15)
第三行 Uptime
表示这个系统一共运行了多长的时间,这里一共运行了78天
下半部分
- PID – 描述进程的ID号
- USER – 描述进程的所有者(谁跑的)
- PRI – 描述Linux内核查看的进程优先级
- NI – 描述由用户或root重置的进程优先级
- VIR – 它描述进程正在使用的虚拟内存 (virtual memory)
- RES – 描述进程正在消耗的物理内存(physical memory)
- SHR – 描述进程正在使用的共享内存(shared memory)
- S – 描述流程的当前状态 (state)
- CPU% – 描述每个进程消耗的CPU百分比
- MEM% – 描述每个进程消耗的内存百分比
- TIME+ – 显示自流程开始执行以来的时间
- Command –它与每个进程并行显示完整的命令执行 (比如/usr/lib/R)
一些快捷键
u – 用于显示特定用户拥有的所有进程。
P –用于基于高CPU消耗对进程进行排序。
M –用于基于高内存消耗对进程进行排序。
T –用于根据时间段对过程进行排序。
h –用于打开帮助窗口并查看此处未提及的更多快捷方式。
帮助: htop -h
更细致的解释:man htop
- Post title:Linux htop 详解
- Post author:Yuxuan Wu
- Create time:2021-01-25 08:22:06
- Post link:yuxuanwu17.github.io2021/01/25/Linux_htop/
- Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.