进程状态

TASK_RUNNING (运行) 进程是可执行的;它或者正在执行,或者在运行队列中等待执行。这是进程在用户空间种执行的唯一可能的状态;这种状态也可以应用到内核空间种正在执行的进程。

TASK_INTERRUPTIBLE(可中断)进程正在睡眠,也就是说它被阻塞。等待某些条件的达成。一旦这些条件达成,内核就会把进程状态设置位运行。处于此状态的进程也会因为接受到信号而提前被唤醒并随时准备投入运行。

TASK_UNINTERRUPTIBLE(不可中断)除了就算是接受到信号也不会被唤醒或者准备投入运行外,这个状态与可打断状态相同。这个状态通常在进程在必须在等待时不受干扰或者等待事件会发时生出现。由于处于此状态的任务对信号不做响应,所以较之可中断的状态,使用得少。

__TASK_TRACED 被其他进程跟踪的进程,例如通过ptrace对调试程序进行跟踪。

__TASK_STOPPED(停止)进程停止执行;进程没有投入运行也不能投入运行。通常这种状态发生在接收到信号SIGSTOP、SIGTSTP、SIGTTIN、SIGTOU等信号的时候。此外在调试期间接受到的任何信号,都会使进程进入这种状态。

 

posted @ 2013-09-30 14:23  jiangmingz  阅读(359)  评论(0编辑  收藏  举报