![精通Linux内核开发](https://wfqqreader-1252317822.image.myqcloud.com/cover/759/48827759/b_48827759.jpg)
上QQ阅读APP看书,第一时间看更新
1.2 进程描述符
从一个进程诞生到退出的时间里,内核的进程管理子系统执行了各种操作,从进程创建、分配CPU时间、事件通知到进程终止时销毁进程。
除了地址空间之外,一个进程在内存中还被分配了一个称为进程描述符的数据结构,内核用它来识别、管理和调度该进程。图1-4描述了内核中的进程地址空间及其进程描述符。
![](https://epubservercos.yuewen.com/5972F1/28528600907087506/epubprivate/OEBPS/Images/tx1627.jpg?sign=1738943637-2siiI5xAQ57k9zwVpuDBu6HQ3RJLgV1D-0-b767d956b154b8d32b6df76ba2336ded)
图1-4
在Linux中,一个进程描述符是<linux/sched.h>中定义的struct task_struct类型的一个实例,它是核心数据结构之一,包含一个进程所拥有的所有属性、标识的详细信息和资源分配条目。查看struct task_struct就像是窥探内核在管理和调度进程时所看到或所使用的内容。
由于任务结构体包含一系列广泛的数据元素,这些元素与不同的内核子系统的功能相关,因此在本章中我们将单独探讨所有元素的目的和范围。我们将介绍一些与进程管理相关的重要元素。