十九、进程管理与ps、top命令

今日内容:
1、进程管理
2、查看进程信息
    ps aux
    ps -elf
    pstree    #查看进程树
    top

一、进程管理

进程是操作系统最核心的概念

概念要点:

程序:本身就是一堆代码文件;
进程:代码运行的过程(操作系统控制硬件运行程序的过程)
并发:多个进程看起来是同时运行,CPU在其期间来回切换;
并行:真正意义上的同时运行,每个CPU核心运行一个程序;
•   PS:四核八线程:物理四核、逻辑八核(单核双线程)
线程:进程内代码执行的过程,CPU上的执行单位;
•   PS:一个进程内至少有一个线程;CPU是运行代码的,不是做IO的;
•   一个进程的多个线程共享该进程的内存资源;
•   不通进程的多个线程的内存资源互相隔离;
提交任务的方式:
•   同步
•   异步
​
任务的三种运行状态:
•   运行态、就绪态、阻塞态
•   PS:非阻塞与阻塞
​
了解知识点:
进程在运行中不断的改变运行状态:
1>就绪状态
当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行,这时的进程状态称为就绪
状态。
2>执行(Running) 状态
当进程已获得处理机,其程序正在处理机上执行,此时的进程状态称为执行状态
3>阻塞(Blocked)状态
正在执行的进程,由于等待某个事件发生而无法执行时,便放弃处理机而处于阻塞状态。引起进程阻塞的
事件可有多种,例如,等待I/0完成、申请缓冲区不能满足、等待信件(信号)等。
就绪>>>执行
处在就绪状态的进程,当调度器为其分配了处理机后,就变成了执行状态。
执行>>>就绪
执行状态的进程在其执行过程中,时间片跑完了不得不让出处理机,于是从执行变成就绪状态。
执行>>>阻塞
正在执行的进程等待某种事件而无法继续执行时,便从执行状态变成阻塞状态。
阻塞->就绪
处在阻塞状态的进程,如果等待的时间发生,则从阻塞状态转变成就绪状态。

二、ps查看进程信息

查看进程信息

ps aux  #查看进程信息
ps -elf #查看ppid
pstree  #查看进程树
pgrep -lu egon #查看其他用户的进程
pgrep -lu egon|head -10 #只看前十行
ps aux |grep nginx 过滤查看
​
ps内解释:
PID #PID号
%CPU#CPU占用率
%MEM#内存
VSZ #虚拟内存
RSS #占用的物理内存
TTY #在哪个终端运行,如tty1...tty6(linux共六个终端)
STAT#进程状态:
    R #运行,进程大多数都处于此状态
    S #可中断睡眠,即在睡眠过程可以接收信号唤醒,可杀死
    D #不可中断睡眠,睡眠过程中不可接受信号唤醒,太忙,杀不死
    T #停止的进程
    Z #僵尸进程,杀不死
    X #结束、、死掉的进程,结束后被快速回收,几乎看不到
    配合上面的状态来,如S<
    < #代表优先级较高的进程
    N #表示优先级较低的进程
            nice -n -20 #最高优先级,1为最低
    s #包含子进程
    + #表示是前台的进程组
    l #小写字母L,以线程的方式运行,即多线程
    | #管道代表多进程
    START  #进程的启动时间
    TIME   #进程占用CPU的总时间
    COMMAND#进程文件名,哪个进程来运行的

三、管理进程top

top作用:动态实时监控进程信息,linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器

1、top命令介绍及用法:

1>基本用法
选项
-d  #指定刷新时间,top里按s也可以
-u  #指定用户
-p  #指定pid
2>内部按键命令:
s   #指定刷新时间,建议不要设置太小
M   #按内存,当前页
P   #按CPU
N   #按pid
R   #倒序,可来回切换
shift+< #左右切换
shift+> #左右切换
f   #增加显示字段
k   #杀死,输入pid回车,9为杀死
1   #展开进程
r   #更改nice值的优先级,先输入pid号
q   #退出,或ctur+c
u   #查看指定用户
p   #查看pid
3>显示信息解释
第一部分:系统整体统计信息
up左边的代表当前的时间
up右边代表运行了多长时间
​
load average: 0.86, 0.56, 0. 78
CPU 1分钟,5分钟,15分钟平均负载
us  #用户态进程占用cpu时间的百分比
sys #内核态进程占用cpu时间的百分比
ni  #代表优先被调度的进程占cpu时间的百分比
id  #cpu空闲的百分比
wa  #cpu等待io的百分比
hi  #硬件中断,处理硬件中断所占用CPU的时间
si  #软件中断,处理软件中断所占用cPU的时间
st  #被偷走的cpu
​
结合kill命令释放进程:
kill pid号   #精准杀掉进程
pkill 进程名  #杀掉此进程的所有进程,含子进程
-l  #小写L,查看kill选项
-9  #强制杀死,一般root会用
-15 #程序释放相应资源,然后再停止
PS:在使用 kill -9 前,应该先使用 kill -15,给目标进程一个清理善后工作的机会。如果没有,可能会留下一些不完整的文件或状态,从而影响服务的再次启动。

top命令图解


 

 

拓展阅读:swap分区

https://www.cnblogs.com/linhaifeng/articles/13915855.html

2、平均负载介绍

 

posted @ 2022-06-09 18:19  秋风お亦冷  阅读(54)  评论(0编辑  收藏  举报