top命令掌握:
Linux命令:top命令详解(绝对干货)
做性能测试时,我们经常需要查看系统的资源使用情况,以便能及时发现性能问题。
top命令是一个强大的工具,能够实时监控系统的进程和资源使用情况。
一. 如何使用
在终端中输入top命令即可启动top工具,它将显示一个实时刷新的界面,其中包含了系统的各项资源使用情况。
top命令的结果参数包含了许多关于系统资源使用情况和进程状态的信息。
二. 参数介绍
1. 顶部信息
-
16:43:35:当前时间。
-
up 1:12:系统运行时间,表示系统已经运行了1小时12分钟。
-
0 users:当前登录系统的用户数量。
-
load average: 0.34, 0.19, 0.12:系统的平均负载情况,分别表示过去1分钟、5分钟、15分钟的平均负载。
-
Tasks: 29 total:当前系统运行的总进程数。
-
1 running:正在运行的进程数。
-
26 sleeping:休眠的进程数。
-
0 stopped:停止的进程数。
-
2 zombie:僵尸进程数。
-
%Cpu(s): 0.9 us:用户空间占用CPU的百分比。
-
%Cpu(s): 0.2 sy:内核空间占用CPU的百分比。
-
%Cpu(s): 0.0 ni:优先级调整占用CPU的百分比。
-
%Cpu(s): 98.9 id:空闲CPU的百分比。
-
%Cpu(s): 0.0 wa:等待IO的CPU的百分比。
-
%Cpu(s): 0.0 hi:硬中断占用CPU的百分比。
-
%Cpu(s): 0.0 si:软中断占用CPU的百分比。
-
%Cpu(s): 0.0 st:虚拟化环境中被偷取的CPU时间的百分比。
-
KiB Mem : 16777216 total:系统可用物理内存总量。
-
KiB Mem : 8176776 free:系统空闲物理内存大小。
-
KiB Mem : 6193684 used:系统已使用的物理内存大小。
-
KiB Mem : 2406756 buff/cache:用于缓存和缓冲的物理内存大小。
-
KiB Swap: 0 total:系统的交换空间总量。
-
KiB Swap: 0 free:系统未使用的交换空间大小。
-
KiB Swap: 0 used:系统已使用的交换空间大小。
-
9708632 avail Mem:系统可用的内存大小。
2. 字段列表
-
PID:进程ID。
-
USER:进程所属的用户名。
-
PR:进程的优先级。
-
NI:进程的Nice值,即优先级调整值。
-
VIRT:进程使用的虚拟内存大小。
-
RES:进程使用的物理内存大小。
-
SHR:进程使用的共享内存大小。
-
S:进程的状态,如S(休眠)、R(运行)等。
-
%CPU:进程使用的CPU资源百分比。
-
%MEM:进程使用的内存资源百分比。
-
TIME+:进程累计占用的CPU时间。
-
COMMAND:进程的命令行。
三. 常用操作
1. 进程排序
按下键盘上的“M”键可以按内存使用率排序,按下“P”键可以按CPU使用率排序。这样可以让你更容易地找到最消耗资源的进程。
2. 切换排序方式
按下键盘上的“F”键,然后选择要排序的字段,如PID、CPU使用率、内存使用率等。
3. 显示特定进程
按下键盘上的“O”键,然后输入要显示的进程号。可以输入多个进程号,用逗号分隔。
4. 终止进程
在top界面中,选中要终止的进程,按下键盘上的“k”键,然后输入要终止的进程号。确认后,该进程将被终止。
5. 改变刷新速度
按下键盘上的“d”键,然后输入以秒为单位的刷新速度。可以通过更改刷新速度来控制top命令的更新频率。
6. 退出 top 命令
按下键盘上的 “q” 键可以退出top工具。
四. 常用参数
常用的top命令参数:
-
-d <秒数>:
更新进程信息的时间间隔。
例如,"top -d 5"表示每隔5秒更新一次进程信息。
-
-n <次数>:
更新进程信息的次数。
例如,"top -n 10"表示更新10次进程信息后退出top。
-
-p <PID列表>:
指定只显示指定PID的进程信息,可指定一个或多个PID,用逗号分隔。
例如,"top -p 1234,5678"表示只显示PID为1234和5678的进程信息。
-
-u <用户名>:
指定只显示指定用户名的进程信息。
例如,"top -u john"表示只显示用户名为john的进程信息。
-
-b
以批处理模式运行top命令,将结果输出到文件而不是终端。
-
-C
显示完整的命令行参数,而不是截断为命令行宽度。
-
-H:
显示进程的层次关系,以树状图形式表示进程间的关联。
-
-i
显示进程的ID号,而不是命令名。
-
-s <字段>
指定排序的字段。例如,"top -s %MEM"表示按内存使用率排序进程。
-
-p
以累计模式显示CPU使用率,即显示自系统启动以来的CPU使用率统计信息。
这些参数可以单独使用,也可以组合使用。例如,"top -d 5 -p 1234,5678"表示每隔5秒更新一次PID为1234和5678的进程信息。
五. top的缺点
top命令自身占用的资源较多时,会导致系统的负载增加和性能下降.
1. top命令默认的刷新频率为3秒,较高的刷新频率会导致top命令频繁地获取和更新系统资源的信息,导致系统负载增加。
2. 当系统中有大量的进程存在时,top命令需要获取和显示每个进程的信息,占用系统资源。
3. 当系统的负载本身较高时,top命令在获取和显示系统资源信息时会受到影响,导致资源占用较多。