首页 百科知识 进程的家族关系

进程的家族关系

时间:2022-10-09 百科知识 版权反馈
【摘要】:Linux系统中所有进程都是相互联系的。有许多进程指针,分别指向祖先进程、父进程、子进程及新、老兄弟进程的task_struct结构。Linux的所有进程还组成一个双向链表。*prev_task项是指向上一进程任务结构体的指针。链表的头和尾都是init_task。Linux还把所有处于可运行状态的进程通过两个指针*next_run和*prev_run连接形成双向循环队列RUN_QUEUE。

2.2.5 进程的家族关系

Linux系统中所有进程都是相互联系的。除了初始化进程外,所有进程都有一个父进程。有许多进程指针,分别指向祖先进程(初始化进程)、父进程、子进程及新、老兄弟进程的task_struct结构。每个进程对应的task_struct结构中包含有指向其父进程和兄弟进程(具有相同父进程的进程)以及子进程的指针。

*p_opptr项是指向祖先进程任务结构体的指针。

*p_pptr项是指向父进程任务结构体的指针。

*p_cptr项是指向子进程任务结构体的指针。

*p_ysptr项是指向弟进程任务结构体的指针。

*p_osptr项是指向兄进程任务结构体的指针。

进程间的家族联系,见图2-1。

img6

图2-1 进程间的家族联系

Linux的所有进程还组成一个双向链表。*next_task项指向下一进程任务结构体的指针。*prev_task项是指向上一进程任务结构体的指针。链表的头和尾都是init_task(即0号进程)。

Linux还把所有处于可运行状态的进程通过两个指针*next_run和*prev_run连接形成双向循环队列RUN_QUEUE。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈