进程状态/调度数据成员(State)
这个信息中可细分为6中状态,分别为:
TASK_RUNNING:
处在这个状态的进程,不是在运行就是准备运行,只是等待运行本进程的资源到位。即准备运行的进程只要得到CPU就可以立即投入运行。进程中有一个运行队列run_queue,容纳所有可运行的进程,调度进程时,从中选择一个进程进行执行。当前运行进程一直处于该队列中。
TASK_INTERRUPTIBLE:
处于等待队列中的进程,等待到资源分配到时觉醒,也可由其它进程通过信号(signal)或定时中断唤醒,唤醒后进入运行队列 run-queue,等待被调度。
TASK_ZOMBIE:
顾名思义,僵尸进程。就如电影里面的僵尸一样,人虽已死(指灵魂),但肉体还活着,处于行尸走肉的状态。僵尸进程表示已释放掉所用的资源(即灵魂已逝),但没有释放本身的PCB(task_struct)。
TASK_SWAPPING:进程页面被交换出内存的进程。
unsigned long flags(进程标志):
*PF_ALIGNWARN 打印“对齐”警告信息。
*PF_PTRACED 被ptrace系统调用监控。
*PF_TRACESYS 正在跟踪。
*PF_FORKNOEXEC 进程刚创建,但还没执行。
*PF_SUPERPRIV 超级用户特权。
*PF_DUMPCORE dumped core。
*PF_SIGNALED 进程被信号(signal)杀出。
*P