Linux_PCB

进程控制块 PCB 
每个进程在内核中都有一个进程控制块(Processing Control Block),Linux内核的进程控制块是task_struct结构体,用来维护进程相关的信息,主要表示进程状态。其作用是使一个在多道程序环境下不能独立运行的程序,成为一个能独立运行的基本单位或与其它进程并发执行的进程。PCB通常是系统内存占用区中的一个连续存区,它存放着操作系统用于描述进程情况及控制进程运行所需的全部信息。

进程控制块(PCB)是系统为了管理进程设置的一个专门的数据结构。系统用它来记录进程的外部特征,描述进程的运动变化过程。同时,系统可以利用PCB来控制和管理进程,所以说,PCB(进程控制块)是系统感知进程存在的唯一标志。

PCB包含信息:
                       进程id、用户id和组id
                       程序计数器
                       进程的状态(有就绪、运行、阻塞)
                       进程切换时需要保存和恢复的CPU寄存器的值
                       描述虚拟地址空间的信息
                       描述控制终端的信息
                       当前工作目录
                       文件描述符表,包含很多指向file结构体的指针
                       进程可以使用的资源上限(ulimit –a命令可以查看)
                       输入输出状态:配置进程使用I/O设备,如磁带机。

进程控制块PCB的组织方式:双向循环链表
1.线性表方式:不论进程的状态如何,将所有的PCB连续地存放在内存的系统区。适用于系统中进程数目不多。
2.索引表方式:该方式是线性表方式的改进,系统按照进程的状态分别建立就绪索引表、阻塞索引表。
3.链接表方式:系统按照进程的状态将进程的PCB组成队列,从而形成就绪队列、阻塞队列、运行队列等。

新创建的一个进程:先生成PCB,再生成进程主题
销毁一个进程:先销毁进程主题,再销毁PCB

pcb源码:https://blog.csdn.net/mcl2840072208/article/details/88309037

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值