top命令详解
编者注:本文为历史博文归档;涉及 Linux 发行版与工具链版本请以当前官方文档为准。引用外链图片可能失效,阅读时请注意时效性。

以下是对 top 命令输出界面的逐行详解。
第一行:系统概览
| 字符 | 含义 |
|---|---|
top - 10:03:19 | 当前系统时间 |
up 137 days , 10:40 | 系统已运行时间(Uptime) |
2 user | 当前在线用户数 |
load average: 0.00, 0.01, 0.05 | 系统负载(Load Average)。三个数值分别为 1 分钟、5 分钟、15 分钟前到现在的平均值 |
说明:2 user 包含系统用户。第二行:任务统计
| 字符 | 含义 |
|---|---|
Tasks : 92 total | 总进程数 |
2 running | 正在运行的进程数 |
90 sleeping | 正在睡眠的进程数 |
0 stopped | 停止的进程数 |
0 zombie | 僵尸进程数 |
关于僵尸进程(Zombie Process):
一个子进程在其父进程没有调用wait()或waitpid()的情况下退出,该子进程即成为僵尸进程。如果其父进程还存在而一直不调用wait,则该僵尸进程将无法回收;等到其父进程退出后,该进程将被init进程回收。
第三行:CPU 状态
| 字符 | 含义 |
|---|---|
%Cpu(s): 0.3 us | 用户空间占用 CPU 百分比 (user) |
0.3 sy | 内核空间占用 CPU 百分比 (system) |
0.0 ni | 用户进程空间内改变过优先级的进程占用 CPU 百分比 (nice) |
99.3 id | CPU 空闲率 (idle) |
0.0 wa | 等待 I/O 的 CPU 时间百分比 (iowait) |
0.0 hi | 硬中断(Hardware IRQ)占用 CPU 的百分比 |
0.0 si | 软中断(Software Interrupts)占用 CPU 的百分比 |
此处显示 CPU 的整体使用情况。
第四行:物理内存
| 字符 | 含义 |
|---|---|
KiB Mem : 1016916 total | 内存总量(示例中约为 1G) |
82280 free | 空闲内存量 |
233848 used | 已使用内存量 |
700788 buff/cache | 缓存的内存量 |
此处显示物理内存的使用率。
第五行:交换分区 (Swap)
| 字符 | 含义 |
|---|---|
KiB Swap: 0 total | 交换区总量 |
0 free | 交换区空闲量 |
0 used | 交换区使用量 |
说明:示例环境中未配置 Swap 分区,故数值均为 0。
第六行:进程列表
| 字符 | 含义 |
|---|---|
PID | 进程号 |
USER | 进程创建者 |
PR | 进程优先级 |
NI | Nice 值。越小优先级越高,范围 -20 至 20(用户设置最大 19) |
VIRT | 进程使用的虚拟内存总量,单位 KB。VIRT = SWAP + RES |
RES | 进程使用的、未被换出的物理内存大小,单位 KB。RES = CODE + DATA |
SHR | 共享内存大小,单位 KB |
S | 进程状态。D=不可中断睡眠,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程 |
%CPU | 进程占用 CPU 百分比 |
%MEM | 进程占用内存百分比 |
TIME+ | 进程运行时间 |
COMMAND | 进程名称 |
优先级说明:
PR越低,优先级越高。计算公式:PRI(new) = PRI(old) + nice。PR中的rt为实时进程优先级即rt_priority,prio = MAX_RT_PRIO - 1 - p->rt_priority。MAX_RT_PRIO = 99,prio大小决定最终优先级。这意味着rt_priority值越大,优先级越高。内核提供的修改优先级的函数是修改rt_priority的值,所以值越大,优先级越高。- 示例:改变优先级。进入
top后按r→ 输入进程 PID → 输入 nice 值。
top 交互命令
在进入 top 界面后,可使用以下快捷键进行操作:
P:以占据 CPU 百分比排序。M:以占据内存百分比排序。T:以累积占用 CPU 时间排序。q:退出命令。按q键退出top查看页面。s:修改刷新时间间隔。按下s键,然后输入数字,即可修改刷新时间间隔(单位为秒)。例如:按下s键,再按数字1键,即可实现每秒刷新一次。k:终止指定的进程。按下k键 → 输入要杀死的进程的 PID → 按 Enter 键 → 选择信号类型(以数字标示,默认 15 为杀死)。本步可省略按 Enter 键(常用为-9)。
kill 信号大全参考:http://www.2cto.com/os/201202/119425.html
版权声明:本文为原创文章,版权归 戴老师的博客 所有,转载请联系博主获得授权。
本文地址:https://1diff.fun/archives/top-ming-ling-xiang-jie.html
如果对本文有什么问题或疑问都可以在评论区留言,我看到后会尽量解答。