赞
踩
目录
top 是 Linux 系统中的一个动态监视工具,它可以实时显示系统中各个进程的资源占用状况,类似于 Windows 的任务管理器。通过 top 命令,用户可以快速查看系统的运行状态,以及各个进程的 CPU、内存等使用情况。
在终端中输入 top 并回车,即可启动 top 命令。
top 命令的输出通常包括以下几部分:
显示当前时间、系统运行时间、登录用户数、系统平均负载等信息。
按照 CPU 使用率从高到低排序显示当前系统中的进程。每个进程会显示其 PID(进程 ID)、USER(用户名)、PR(优先级)、NI(nice 值)、VIRT(虚拟内存使用量)、RES(常驻内存使用量)、SHR(共享内存大小)、S(进程状态)、%CPU(CPU 使用率)、%MEM(内存使用率)、TIME+(CPU 时间)、COMMAND(命令行描述)等信息。
显示一些提示信息和操作说明。
在linux系统中输入top,出现如下输出:
- root@gxdxroot-KVM:~# top
- top - 22:04:57 up 6:13, 2 users, load average: 1.55, 1.33, 1.26
- Tasks: 357 total, 1 running, 356 sleeping, 0 stopped, 0 zombie
- %Cpu(s): 1.8 us, 6.4 sy, 0.0 ni, 90.7 id, 0.0 wa, 0.0 hi, 1.1 si, 0.0 st
- MiB Mem : 64293.3 total, 31786.6 free, 4967.3 used, 27539.4 buff/cache
- MiB Swap: 2048.0 total, 2048.0 free, 0.0 used. 58574.6 avail Mem
- PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
- 1992 root 20 0 2892 1536 1536 S 11.8 0.0 7:00.62 istartproc.sh
- 6962 root 0 -20 2031596 38268 12672 S 11.8 0.1 16:06.78 mrsout.asv
- 7118 root 0 -20 2553592 436824 105472 S 11.8 0.7 22:38.50 sipgwout.asv
- 77 root 20 0 0 0 0 S 5.9 0.0 0:31.04 ksoftirqd/10
- 6924 root 0 -20 4075960 329064 21632 S 5.9 0.5 9:00.05 sipsvrout.asv
- 783493 root 20 0 25.5g 2.2g 18816 S 5.9 3.6 10:36.08 java
- 1754635 root 20 0 16428 3968 3072 R 5.9 0.0 0:00.02 top
- 2234342 root 20 0 0 0 0 I 5.9 0.0 0:06.23 kworker/9:2-events
- 1 root 20 0 166764 11260 7932 S 0.0 0.0 0:03.74 systemd
- 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd
- 3 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_gp
- 4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 rcu_par_gp
- 5 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 slub_flushwq
- 6 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 netns
这是 `top` 命令的输出,下面将解释各部分的内容:
top - 22:04:57:当前时间。
up 6:13: 系统运行时间,已经运行了6小时13分钟。
2 users: 当前登录的用户数。
load average: 1.55, 1.33, 1.26:系统负载平均值,分别表示过去1分钟、5分钟和15分钟的平均负载。
Tasks: 357 total, 1 running, 356 sleeping, 0 stopped, 0 zombie:
当前系统总共有357个进程,其中1个正在运行,356个处于睡眠状态,没有停止或僵尸进程。
%Cpu(s): 1.8 us, 6.4 sy, 0.0 ni, 90.7 id, 0.0 wa, 0.0 hi, 1.1 si, 0.0 st:
+ us:用户空间占用CPU的百分比。
+ sy:内核空间占用CPU的百分比。
+ ni:改变过优先级的进程占用CPU的百分比。
+ id:空闲CPU百分比。
+ wa:等待输入/输出的CPU百分比。
+ hi:服务硬件中断的CPU百分比。
+ si:服务软件中断的CPU百分比。
+ st:被虚拟机偷走的CPU百分比。
MiB Mem:物理内存状态。
+ total:总内存大小。
+ free:可用内存大小。
+ used:已使用内存大小。
+ buff/cache:被缓冲和缓存使用的内存大小。
MiB Swap:交换空间状态。
+ total:总交换空间大小。
+ free:可用交换空间大小。
+ used:已使用交换空间大小。
+ avail Mem:估计的可用内存大小。
每个进程会显示其PID(进程ID)、USER(用户名)、PR(优先级)、NI(nice值)、VIRT(虚拟内存使用量)、RES(常驻内存使用量)、SHR(共享内存大小)、S(进程状态)、%CPU(CPU使用率)、%MEM(内存使用率)、TIME+(CPU时间)和COMMAND(命令行描述)。
例如:
PID 1992:进程ID为1992。
root:该进程由root用户启动。
S:进程状态,S表示休眠状态。
11.8% CPU:该进程使用了11.8%的CPU。
0.0% MEM:该进程使用了0.0%的内存。
7:00.62 TIME+:该进程总共使用了7小时00分钟62秒的CPU时间。
istartproc.sh:进程的命令行描述。
从列表中可以看出,有几个进程(如`mrsout.asv`、`sipgwout.asv`、`sipsvrout.asv`和`java`)正在使用较多的CPU资源。此外,`java`进程也使用了较多的内存。
总结下来,这个`top`输出提供了关于系统状态和各个进程资源使用情况的详细信息,帮助用户了解系统的实时运行状况。
在 top 命令运行期间,用户可以通过键盘上的按键进行交互操作:
q:退出 top 命令。
k:杀死一个进程。输入进程 ID 后,按回车即可杀死该进程。
r:重新设置进程的优先级。输入进程 ID 和新的优先级后,按回车即可。
f:进入字段管理界面,可以选择显示哪些字段。
o:改变字段的排序方式。按字母键选择想要排序的字段,然后按回车。
s:改变刷新频率。输入新的刷新间隔时间(以秒为单位),按回车即可。
空格:立即刷新显示。
h:显示帮助信息。
top 命令还支持一些选项,可以在启动时指定:
-d:设置刷新间隔时间,单位是秒。
-n:设置刷新次数,之后自动退出。
-p:只监视指定进程的 ID;多个进程 ID 之间用逗号分隔。
-u:只监视指定用户的进程。
[121yunwei@ecs-52a1 ~]$
[121yunwei@ecs-52a1 ~]$ top -p 236611
显示结果如下:
[121yunwei@ecs-52a1 ~]$
[121yunwei@ecs-52a1 ~]$ top -u 121yunwei
显示结果如下:
1、top 命令显示的是实时的系统状态,所以每次刷新时,显示的数据都可能不同。
2、top 命令本身也会占用一定的系统资源,因此在生产环境中,不建议长时间运行 top 命令,除非确实需要实时监控系统状态。
若想了解更多,文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。