PCB的一些核心特性

PCB(Process Control Block,进程控制块)是操作系统中用于管理和控制进程的关键数据结构

一、PID

        进程的身份标识(从1开始累加) 32位整数

同一台机器上,同一时刻,每个进程pid是唯一的。

例:选中一个进程,结束任务=>任务管理器会获取到选中的进程id,然后调用一个系统api,把pid作为参数传进去,从而完成杀死进程。

二、内存指针

        用来描述进程都能使用哪些内存

进程运行过程中要消耗一些系统资源(如内存),从系统申请,系统分配。

每个进程都必须使用自己申请到的内存。进程也需要知道,哪里存的指令,哪里存的数据。

进程运行时需要有“指令”,也需要有“内存”(均要加载到内存中)

内存指针就描述了进程使用内存资源的详细情况。

三、文件描述符表‌

        以顺序表等形式记录进程已打开的文件及其他资源(如网络连接、设备接口)。该属性确保进程对文件的操作权限和资源访问的合法性‌。

进程要经常访问硬盘,操作系统对硬盘这样的硬件设备封装=>文件

存储器=内存+外存(硬盘,软盘,光盘,u盘)

操作系统对外存进行统一的抽象,全按照“文件”的方式操作。进程想操作文件,需要先“打开文件”,让进程在文件描述符表中分配一个表项(构造一个结构体),表示这个文件的相关信息。

四、状态

描述进程的当前执行状态,描述某个进程是否能够去cpu上执行

运行状态‌:进程正在CPU上执行;
‌就绪状态‌:进程已准备好运行,但需等待空闲CPU资源;
阻塞状态‌:进程因等待I/O操作,来自控制台的输入/出,硬盘输入/出,网卡输入/出而暂停执行‌。
(注:部分分类可能简化为“就绪”和“阻塞”两种状态‌)

五、优先级

决定进程获取CPU资源的优先级顺序。(调度可以调配

多个等待系统调度,调度的先后关系不平均。

高优先级进程可更快被调度执行,常用于关键任务或需快速响应的场景‌。

六、记账信息

针对每个进程,占用了多少cpu时间,进行统计。统计进程在CPU上的执行时间、指令数目等数据,用于优化资源分配策略

会根据这个统计结果进行进一步的调整调度的策略,在下一轮次进行调整,确保每一个进程都不至于完全不能到cpu上执行。

七、上下文

        保存进程切换时的CPU寄存器值、堆栈内容及程序计数器等状态。通过上下文保存与恢复,操作系统可在进程被中断后重新加载原有执行状态,实现“无缝续接”。

支撑进程调度的重要属性 <=>读档和存档

每个进程在运行过程中,很多中间结果会存在cpu的寄存器中。

保存上下文:把cpu的关键寄存器中的数据,保存到内存中(PCB的上下文属性中)

恢复上下文:把内存中的关键寄存器中的数据加载到cpu对应的寄存器中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值