#前提
Linux中有很多的工具可以监控进程,最为大家所熟知的就是ps命令和top命令。何为监控进程?用通俗的话来讲,查看主机运行了哪些任务和资源的占用率,举个大家最熟悉的例子,windows系统的任务管理器。
我来带大家来看一下ps命令和top命令的显示
执行ps -ef命令后,会出现以下内容:
执行top命令后,会出现以下内容:
大家看到命令的显示,是不是都是一头雾水?我这就带大家了解ps和top的奥秘~
ps和top都是用于监控进程的工具,那有什么区别呢?
最主要的区别,ps命令是系统在过去执行的进程的静态快照,而top命令是持续的监视进程的信息。(top默认是三秒更新一次信息)
1.ps命令(ps -ef和ps aux最常用的命令)
1.1只输入ps命令:显示当前控制台下属于当前用户的进程
1.2输入ps -ef命令(-e 显示所有进程,-f全格式):
解释如下:
UID 进程拥有者
PID 进程ID
PPID 父进程ID
C CPU使用百分比
STIME 进程启动的时间
TTY 终端编号(TTY一列中的?符号代表相应进程无启动端。)
TIME 进程执行的时间
CMD 命令名称和参数
1.3输入ps aux命令:
解释如下:
USER 进程拥有者
PID 进程ID
%CPU CPU使用率
%MEM 内存使用率
VSZ 虚拟内存大小
RSS 物理内存大小
TTY 终端编号
STAT 进程状态 Z 僵尸进程(不存在暂时也无法消除),R 正在执行中,S 静止状态 < 优先级顺序比较高 N 优先顺序比较低,T暂停执行
START 进程运行开始的时间
TIME 进程运行了多少时间
COMMAND 命令名称和参数
1.4使用p参数查看某个服务进程
例如:查看有关nginx的进程
2.top命令
top – 02:10:36 当前时间
up 启动时间
user 当前登录用户数量
load average:0.15,0.21,0.09 表示1分钟 | 5分钟 | 15分钟,每个值由CPU,内存,网络构成;三个值理论最高1,假如理论值全满会到3;
Tasks: 124 total 进程的总数量, 1 running正在运行进程的数量, 123 sleeping 正常休眠进程的数量, 0 stopped 停止进程的数量, 0 zombie 僵尸进程
%Cpu(s): 0.2 us 用户空间占CPU的百分比, 0.0 sy 内核空间占CPU的百分比, 0.0 ni改变过优先级进程, 99.8 id空闲CPU的占用率, 0.0 wa IO等待输入输出的CPU的时间占比, 0.0 hi 硬中断占CPU的百分比, 0.0 si 软中断占CPU的百分比, 0.0 st 虚拟化平台占用 (加在一起100%)
MiB Mem : 1829.0 total物理内存总量, 1474.1 free空闲内存总量, 172.5 used使用内存总量, 182.4buff/cache 读缓存
第四第五行为内存和swap信息,含义基本相同