ps 查看正在运行的进程
-a 看所有进程
-u 以用户的格式显示进程
-x 显示后台进程运行的参数
-e 显示当前所有进程
-f 全格式
-ef 以全格式显示当前所有进程
--sort 可以指定内存、CPU等安装顺序排列,--sort=%mem 默认是升序如果想要降序就--sort=-%mem
USER 用户
PID 进程iD,不是唯一的,重启进程就会更新
%CPU cpu占用
%MEM 内存占用
PPID 父进程
VSZ 虚拟内存,也就是完整申请的内存,预分配
RSS(实际使用内存) 比如一个进程向系统申请1G的空间,但是他实际只用了500M那么1G就说虚拟内存空间,500M是实际内存空间,可以有百分之150%
TTY (终端)
伪终端pts:在图形界面打开的终端或远程登录的终端
? 在总端登录前就有的进程,不属于任何终端
STAT(运行状态 S表示休眠 R表示运行 D不可终端 Z僵5死 (需要定
时进行清除) T被跟踪或者被停止了,<搞优先级,N低优先级,L页面锁定在内存 I 表示多线程 +在前台进程组
START(执行开始时间)
TIME(进程执行时间)
COMMAND(进程名,过长就截断显示)
top
CPU负载和使用百分比分别是什么
CPU使用百分比 是指cpu可使用的资源进程使用了多少
CPU负载 是指CPU进程排队数,负载越高表示进程多
1 显示CPU逻辑内核
c 切换显示详细command
M 可按照内存占用情况镜像排序
P 根据CPU使用百分比大小进行排序
T 根据时间/累计实际进行排序
f 可以选择显示内容
pgrep [进程名] 过滤进程 | pkill [经常名] 过滤
-U 查找某个用户的进程ID
-G 查找某个组的进程ID
-P 根据父进程ID,查重所有子进程ID
-l 不仅打印pid,也打印进程名
-o 表示如果该程序有多个进程正在运行,则查找最先启动的
-n 表示如果该程序有多个进程正在运行,则查找最后启动的
-d 定义多个进程直接的分隔符;默认使用换行符
pidof [进程名] 查找进程
kill [信号] [pid] 发送信号
-15 默认中止
-9 强制结束
-1 重读配置文件相对于reload
19 停止,在后台运行
killall [进程名] 直接结束进程
调度优先级 使用 ps -eo comm,nice查看
调度优先级决定对CPU的访问
进程的nice值影响优先级
范围伪-20到19,默认为0
nice值越低表示CPU优先级越高
更改优先级
启动后 renice -n [值] [pid] 重启就失败
启动前 nice -n [值] [pid] [进程可执行的命令]
如果想要让程序在后台运行就在命令后面加一个 & 或者使用ctrl + z 这样就会生成一个job任务
[root@Rehl8 ~]# vim passwd &
[1] 2969
[1]表示任务号
2969表示进程号
可以使用 jobs命令查看后台任务
如果想要把任务调度到前台使用 fg %[任务号]
fg %1
:star:进程执行操作生成进程,进程也会有UID和GID,然后进程在去读取匹配文件,匹配文件进程会使用GID和UID去匹配文件的UID和GID;列如:dns服务进程默认GID和UID都为named的,那么他就会去匹配服务下属文件,匹配成功后再去匹配GID和UID,UID如果匹配不上,那就去匹配GID,GID也匹配不成功那么进程将会启动失败
:star: CPU在处理进程时所采用的是轮询算法,比如有1、2、3、4这4个进程在排队等cpu处理,那么cpu会先给1分配一点时间,1执行完成了,给2分配,如果2在分配的时间内没有执行完成,那就继续排队等待分配执行