一、进程管理简介
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
二、进程的查看 -ps 命令和 pstree 命令
ps aux
# 查看系统中所有进程,使用BSD操作系统格式
ps -le
# 查看系统中所有进程,使用Linux标准命令格式
选项:
a 显示一个终端的所有进程,除了会话引线
u 显示进程的归属用户及内存的使用情况
x 显示没有控制终端的进程
-l 长格式显示。显示更加详细的信息
-e 显示所有进程,和-A作用一致
注:用 ps -aux 会有一行报错,不用管它,不会影响结果。用 ps aux 命令不会有报错。
这是报错原因(man ps)
ps 命令输出
USER 该进程是由哪个用户产生的(第一行root,PID 1,是所有进程的父进程)
PID 进程的ID号
%CPU 该进程占用的CPU资源的百分比,占用越高,进程越耗费资源
%MEM 该进程占用物理内存的百分比,占用越高,进程越耗费资源
VSZ 该进程占用虚拟内存的大小,单位KB
RSS 该进程占用实际物理内存的大小,单位KB
TTY 该进程实在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形界面终端,pts/o-255代表虚拟终端。
STAT 进程状态。常见的状态有:
>>> R:运行
>>> S:睡眠
>>> T:停止状态
>>> s:包含子进程
>>> +:位于后台
START 该进程的启动时间
TIME 该进程占用CPU的运算时间,注意不是系统时间
COMMAND 产生此进程的命令名
查看进程树
[root@localhost ~]# pstree [选项]
选项:
-p:显示进程的PID
-u:显示进程的所属用户
三、进程的查看 -top 命令
查看系统健康状态
top [选项]
注:top只能查看占用资源最多的一些进程。
选项:
-d 秒数:指定top命令每隔几秒更新。默认是3秒
-b:使用批处理模式输出。一般和 “-n” 选项合用
-n 次数:指定top命令执行的次数。一般和 “-b” 选项合用
>>> 在top命令的交互模式当中可以执行的命令
?或h:显示交互模式的帮助
P:以CPU使用率排序,默认就是此项
M:以内存的使用率排序
N:以PID排序
q:退出top
重要信息解读
第一行信息为任务队列信息
注:load average: 0.00, 0.00, 0.00 一般和系统核心数有关。如果双核,不应该大于2,。如果4核,不应该大于4。(经验值)
第二行为进程信息
第三行是CPU的占用率
注:一般CPU的空闲率不能低于20%
第四行是内存的占用率
第五行是Swap交换分区的占用率
注:buffers:缓冲,加速数据的写入。cached:缓存,加速数据的读取。
使用top查看所有进程
top -b -n 1 > /root/top.log
注:1 代表刷新一次