- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]第4章进程管理-1
* 运 行 过 程 (1)在不支持进程运行的环境下: 依次执行程序C,程序D。可以看到,先是打印机不停的打印工资报表,打完后,接着运行程序C,不停的计算,最后显示所计算的结果。 (2)在支撑进程运行的环境下: 创建进程C和进程D。 由于进程C是I/O量较大的进程,而进程D是计算量较大的进程,故在系统进程调度的控制下,两个进程并发执行。 可以看到打印机不断打印工资报表,而处理机不停的计算,最后屏幕显示计算的结果。 * 三、进程描述1. 什么是进程控制块 描述一个进程在各个不同时期所处的状态,与其他进程及系统资源的关系的数据结构称为进程控制块pcb(process control block),也称为进程描述器(process descriptor)。 系统为了管理进程而设置的一个专门的数据结构,用它来记录进程的外部特征,描述进程的运动变化过程。 系统利用PCB来控制和管理进程,所以PCB是系统感知进程存在的唯一标志。 进程与PCB是一一对应的 * 2. 进程的组成 程序与数据: 描述进程本身所应完成的功能; PCB: 描述进程的动态特征,该进程与其他进程和系统资源的关系。 进程控制块PCB 程 序与数 据 * 在系统中一个进程存在: 进程的执行程序(一个可执行文件) 进程控制块(数据结构) 进程总是位于某个队列(就绪、等待某事件队列) 处于某种状态(运行、就绪、等待) 占用某些系统资源(内存,打开某些文件、处理机、外设) 进程标识信息 进程状态信息 进程控制信息 用户堆栈 共享地址空间 用户私有地址空间 (代码、数据) 进 程 控 制 块 * 3. PCB的主要内容 (1)进程标识符: 进程符号名或内部id号。 (2)进程当前状态: 本进程目前处于何种状态(运行、就绪、等待)。 (3)当前队列指针next: 该项登记了处于同一状态的下一个进程的pcb地址。 (4)总链队列指针all_q_next: 该项登记了在系统总链队列中,下一个进程的pcb地址。 * 系统中的进程是很多的,状态也不一样。为了调度和管理进程,需将各进程的PCB用适当的方法组织起来,以下有三种方法: 把所有的PCB组织在一个表格中(简单,但查找不方便,适用于进程数目少的场合) 分别把有着相同状态的进程的PCB组织在同一表格中(如就绪进程表,等待进程表,运行进程表) 分别把具有相同状态的所有进程的PCB按优先级排成一个或多个队列(最常用的方法,如就绪队列,等待队列等,可能等待的资源相同,但优先级不同) * all_q _next next next next PCB PCB PCB all_q _next 总链队列结构 * 3. PCB的主要内容 (5)程序开始地址: 该进程的程序将从此地址开始执行。 (6)进程优先级: 反映了进程要求CPU的紧迫程度。 (7)CPU现场保护区: 当进程由于某种原因释放处理机时,CPU现场信息被保存在pcb的该区域中。 (8)通信信息: 进程间进行通信时所记录的有关信息。 (9)家族联系: 指明本进程与家族的联系。 (10)占有资源清单 * (三)进程控制 一. 进程控制的概念 进程控制的职责是对系统中全部进程实施有效的管理,它是处理机管理的部分(另一部分是进程调度),当系统允许多进程并发执行时,为了实现共享、协调并发进程的关系,处理机管理必须提供对进程实行有效的管理。 进程控制包括: 进程创建、进程撤消、进程阻塞、进程唤醒 改变优先数、 调度进程、进程延迟 这些操作都要对应地执行一个特殊的程序段(操作系统核心程序),同时系统也通过系统调用给用户提供进程控制的功能。教材上叫原语(一种特殊的系统调用)。 * 运行 就绪 等待 时间片到 进程调度 进程唤醒 进程创建 进程阻塞 进程撤消 * 二. 进程创建 1. 进程创建原语的形式: create(name,priority,start-addr) 入口参数 name:被创建进程的标识符 priority:进程优先级 start-addr:某程序的开始地址。 2. 进程创建原语的功能: 创建一个指定标识符的进程(形成该进程的进程控制块pcb)。 Linux系统: fork() 进程映像 exec() * 3. 进程创建原语的实现 创建一个PCB 从PCB池中申请一个空的PCB结构: -1 = x(进程标识符单元) 赋予一个统一进程标识符 为进程映象分配空间 初始化进程控制块 许多默认值 (如: 状态为 New,无I/O设备或文件...) 设置相应的链接 如: 把新
您可能关注的文档
最近下载
- 中国文化概论课件-中国文化的现代化.ppt VIP
- 酒店基本情况调查表.docx VIP
- 《GNSS定位测量技术》 课件 子项目1、2 GNSS定位技术的发展;坐标系统与时间系统.ppt
- 人教人音版七年级音乐上册《红旗颂》课件下载.ppt VIP
- 2024年新人教版一年级上册数学全册教案(新版教材).docx
- 消防检测课件.pptx VIP
- 生物制药实验室管理软件:LabVantage二次开发_(5).LabVantage用户界面定制.docx VIP
- 中国文化概论课件-中国文化的发展历程.ppt VIP
- GB51016-2014 非煤露天矿边坡工程技术规范.pdf VIP
- 一种抗单粒子烧毁的高电子迁移率晶体管及其制备方法.pdf VIP
文档评论(0)