linux process有以下几种状态:
1.TASK_RUNNING
2.TASK_INTERRUPTIBLE
3.TASK_UNINTERRUPTIBLE:这个跟上个状态的不同的地方在于处于这种状态的process是不可以被signal唤醒的
4.TASK_STOPPED
5.TASK_TRACED(当进程被debbuger停止时)
6.EXIT_ZOMBIE:当进程的父进程未进行wait()或waitpid()系统调用时
7.EXIT_DEAD
处于EXIT_STOPPED,EXIT_ZOMBIE,EXIT_DEAD的进程不处于任何队列中,而是由其父进程进行处理。
处于TASK_RUNNING状态的进程被按照优先级放于不同的队列中
处于TASK_INTERRUPTIBLE,TASK_UNINTERRUPTIBLE状态的进程按其等待的事件的不同放于不同的等待队列中。
每个等待队列中,nonexclusive进程放在队列前头,exclusive的进程放在队列的后面,所以每个事件会唤醒所有的nonexclusive进程,但是只会唤醒一个
exclusive进程。
2009/01/16 五
process state & process queue
Linux进程状态详解
最新推荐文章于 2025-04-18 20:59:31 发布
本文详细介绍了Linux系统中进程的各种状态,包括TASK_RUNNING、TASK_INTERRUPTIBLE等,并解释了这些状态的具体含义及进程如何在不同状态下进行调度。
1万+

被折叠的 条评论
为什么被折叠?



