ps aux执行之后的进程状态

ps命令的详细说明执行man ps查看

一、 以上ps查看进程的命令是最常用的两种,有啥区别呢,下面就是man 里面对参数的解释

1、ef使用标准语法查看系统上的每个进程

2、aux使用BSD(linux的衍生物)语法查看系统上的每个进程

 

二、进程的状态

最常见的五种:

R(运行):进程正在运行或在运行队列中等待。

S(中断):进程处于休眠中,当某个条件形成后或者接收到信号时,则脱离该状态。

D(不可中断):进程不响应系统异步信号,即便用kill命令也不能将其中断。

Z(僵死):进程已经终止,但进程描述符依然存在, 直到父进程调用wait4()系统函数后将进程释放。

T(停止):进程收到停止信号后停止运行。

实际环境见到最多的:

高优先级(<),低优先级(N),被锁进内存(L),包含子进程(s)以及多线程(l)

 1、例如Ss,systemd的子进程

2、再例如I,多线程

 

 3、再例如+,位于后台的进程组

进程组的概念:每个进程组都有一个组长进程,组长进程的进程号等于进程组ID。组长进程可以创建一个进程组、创建该组中的进程。只要某个进程组中有一个进程存在,则该进程组就存在,与组长进程是否终止无关。从进程组创建开始到其中最后一个进程离开为止的时间区间成为进程组的生存期。进程组中最后一个进程可以终止或者转移到另一个进程组中

三、僵尸进程怎么产生的:

百度百科解释:僵尸进程是当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程。如果父进程先退出 ,子进程被init接管,子进程退出后init会回收其占用的相关资源

怎么干掉僵尸进程:杀死僵尸进程的父进程(僵尸进程的父进程必然存在),僵尸进程成为"孤儿进程",过继给1号进程init,init始终会负责清理僵尸进程

怎么查看系统有没有僵尸进程:命令行top回车,看下面红框的地方

上面top回显还有两个重要的值,PR(priority)和NI(nice),表示进程的优先级,这俩的区别是PR是动态优先级,NI是静态优先级(改变静态优先值使用renice);进程”优先级”越高,而值越大“优先级”越低

在简单说一个概念,linux里面分实时进程和非实时进程,优先级范围一共有140个,取值是0-139

nice调整进程优先级的范围一般是在-20-19,对应到优先级范围是100-139,这些能被调整优先级的进程都是非实时进程,0-99的优先级范围是实时进程(实时进程优先级chrt设置)

原文地址:https://www.cnblogs.com/qfdxxdr/p/14924657.html