【摘要】:Linux的进程控制块用任务结构体task_struct描述。将所有进程控制块task_struct的指针存储在task数组中,以便有效地管理。task数组大小限制了系统并发执行的进程总数,而物理内存的大小决定了系统中的最大进程数。Linux在内存空间中开辟了一个专门的区域存放所有进程的任务结构体task_struct。在2.4.0版本中,每个task_struct结构占1680字节。
2.2 描述进程的数据结构
Linux的进程控制块用任务结构体task_struct描述。Linux在内核空间专门开辟一个指针数组task,该数组的每一个元素是一个指向任务结构体的指针,所以task数组又称为task向量。将所有进程控制块task_struct的指针存储在task数组中,以便有效地管理。task数组大小限制了系统并发执行的进程总数,而物理内存的大小决定了系统中的最大进程数。Linux在内存空间中开辟了一个专门的区域存放所有进程的任务结构体task_struct。在2.4.0版本中,每个task_struct结构占1680字节。
task_struct容纳了一个进程的所有信息,我们主要对如下几个方面的信息进行介绍。
(1) 进程的状态和标志信息。
(2) 进程的调度信息。
(3) 进程的标识信息。
(4) 进程间通信信息。
(5) 进程的家族关系。
(6) 时间和定时信息。
(7) 文件系统信息。
(8) 存储管理信息。
(9) CPU现场保留信息。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。