前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >操作系统知识整理 – 进程控制块

操作系统知识整理 – 进程控制块

作者头像
全栈程序员站长
发布2022-11-15 17:49:51
1K0
发布2022-11-15 17:49:51
举报
文章被收录于专栏:全栈程序员必看

前提

系统中需要有描述进程存在和能够反映其变化的物理实体,即进程的静态描述

进程的静态描述由3部分组成:进程控制块(Process Control Block,PCB),有关程序段和该程序段操作的数据结构集

PCB是系统感知进程的唯一实体用于描述进程的当前情况以及管理进程运行的全部信息,是操作系统中最重要的记录型数据结构

程序段以及数据结构集是进程完成所需功能的物质基础

一个进程的PCB全部或部分常驻内存,而程序段和数据结构集存放在外存

进程控制块的内容

PCB集中反映一个进程的动态特征,创建一个进程时,应首先创建其PCB,然后根据PCB中的信息对进程实施有效的管理和控制。当一个进程完成其功能时,系统会通过释放PCB来释放进程所占有的各种资源,进程也随之消亡。

1)进程标识符

内部标识符:对于系统而言,每个进程都有唯一的进程名或进程标识号,用于识别每个进程;

外部标识符:由用户提供的标识符,有利于资源共享和保护;为了描述家族关系的标识符,表示进程之间的关系。

2)处理机状态

通用寄存器:用于暂存信息;

指令计数器:存放下一个指令的地址;

程序状态字PSW:包含状态信息;

用户栈指针:指向与进程相关的系统栈,系统栈用于存放过程和系统调用参数及调用地址。

3)进程调度信息

进程状态;

进程优先级;

与进程调度算法相关的其他信息:如进程已等待CPU的时间、预计执行时间等等;

事件:进程由执行状态转变为阻塞状态后等待的事件,即阻塞原因。(可回顾进程状态转换

4)进程控制信息

进程的程序段和数据结构集的地址;

进程同步和通信机制;

进程运行所需要的资源清单:包括有关存储器的信息、使用输入输出设备的信息和有关文件系统的信息等。

链接指针:指向下一个进程的PCB的首地址。

5)CPU现场保护区

若进程因等待某个事件而进入阻塞状态或因某个事件发生而被中止在处理机上的执行,为了以后该进程能在被打断出恢复执行,需要设置专门的CPU现场保护区,以存储退出执行时的进程现场数据

由于PCB中包含较多信息,往往要占据较大的存储空间(一般占几百到几千个字节),所以在某些系统中为了减少PCB对内存的占用量,只允许 PCB中最常用的部分保存在内存中,其他部分则存放于外存,待该进程将要执行时,与其他数据一起装入内存。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/226753.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月30日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前提
  • 进程控制块的内容
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档