Linux 的进程状态

Posted 闲云野鹤的博客日志

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 的进程状态相关的知识,希望对你有一定的参考价值。

 

(1)运行:当一个进程在处理机上运行时,则称该进程处于运行状态。处于此状态的进程的数目小于等于处理器的数目,对于单处理机系统,处于运行状态的进程只有一个。在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的空闲进程。

(2)就绪:当一个进程获得了除处理机以外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。就绪进程可以按多个优先级来划分队列。例如,当一个进程由于时间片用完而进入就绪状态时,排入低优先级队列;当进程由I/O操作完成而进入就绪状态时,排入高优先级队列。

(3)阻塞:也称为等待或睡眠状态,一个进程正在等待某一事件发生(例如请求I/O而等待I/O完成等)而暂时停止运行,这时即使把处理机分配给进程也无法运行,故称该进程处于阻塞状态。

 

linux下用ps -aux 查看的进程状态 stat

    D    不可中断     Uninterruptible sleep (usually IO)
    R    正在运行,或在队列中的进程
    S    处于休眠状态
    T    停止或被追踪
    Z    僵尸进程
    W    进入内存交换(从内核2.6开始无效)
    X    死掉的进程

进程后面跟的修饰符

    <    高优先级
    N    低优先级
    L    有些页被锁进内存
    s    包含子进程
    +    位于后台的进程组;
    l    多线程,克隆线程  multi-threaded (using CLONE_THREAD, like NPTL pthreads do)

以上是关于Linux 的进程状态的主要内容,如果未能解决你的问题,请参考以下文章

Linux-进程描述之进程状态僵尸进程与孤儿进程

Linux进程状态转换图

2. 在Linux中进程有哪几种状态,每种状态代表的含义是啥?

Ubuntu查看系统进程及服务状态

如何查看linux进程状态

Linux——进程概念(进程状态)