Linux中的PCB(进程描述符(task_struct))

本文详细介绍了Linux中的PCB(进程控制块),即task_struct结构。内容涵盖进程的基本元素、task_struct作为PCB的角色、进程的标识符、状态、优先级、内存指针、上下文数据等关键信息。同时,还讨论了进程间的亲属关系、进程的优先级管理和组织方式,通过双向链表形成了进程树结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

概念必须清楚!慢一点可以,只要搞清楚就行了!

进程的两个基本元素是程序代码(可能被执行相同程序的其他进程共享)和与代码相关联的数据集

进程信息被放在一个叫做进程控制块的数据结构中,可以理解为进程属性的集合
称为PCB(process control block ),Linux 操作系统下的PCB:task struct

task_struct–是PCB的一种

进程的另外一个叫法是任务(task),Linux内核通常把进程也成为任务.

内存把进程的列表存放在叫做任务队列(task list) 的双向循环链表中.链表中的每一个项类型为task_struct,称为进程描述符(prcess descriptor) 的结构

一个一个进程就是这样被连接起来的,双向链表,很直观!
在这里插入图片描述

进程描述符的路径
在这里插入图片描述
大概从1340行开始就是关于进程描述符的信息了
在这里插入图片描述

在 32位的机器上 ,task_struct的大小大概为 1.7KB,进程描述符里面所包含的信息能够完整的描述一个正在程序

具体的表征信息:

标识符:跟这

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值