- 1、本文档共40页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章挂起和进程控制剖析
OS内核两大 方面功能 进程管理 存储器管理 设备管理 资源管理 中断处理 原语 时钟 操作 管理 支撑 硬件 如系统调用、键盘命令输入、进程调度、设备驱动、文件操作等。 时间片轮转调度、截止时间控制、最长时间控制等 原语:由若干条指令构成、用于完成一定功能的一个过程。 原子操作:一个操作中的所有动作要么不做、要么全部完成。 进程的调度、分派、创建、撤消等。 内存分配与回收、内存保护与对换、虚拟内存管理等。 设备驱动程序:缓和CPU与I/O不匹配的矛盾,实现设备分配和设备的独立性等。 O S内核 2.3.2 进程的创建 当子进程创建时,子进程继承父进程所拥有的资源; 当子进程撤消时将从父进程那里继承的资源归还给父进程。 撤消父进程时,也必须同时撤销其所有子进程 A B C D E F G H I J 父进程(Parent Process) 子进程(Progeny Process) 祖先(Ancestor) Unix构成进程家族,Windows不存在进程的层次结构 进程创建过程 创建进程请求 OS 调用创建进程原语 Creat() 申请PCB、 分配进程ID 为进程分配资源 初始化PCB 将进程放进Ready队列 产生新进程事件: 用户登录:当合法用户登录时 作业调度:批处理系统,把一个作业调度执行时。 提供服务:当系统收到服务请求时。 应用请求:当应用本身需要并发进程时。 为新进程分配一个唯一的进程ID,并申请一个空白的PCB。 为进程的程序代码、数据用户栈分配内存空间。 (1)将系统分配的进程ID、父进程ID写入PCB。 (2)将程序计数器指向程序的入口地址、栈指针指向栈顶。 (3)设置进程状态、优先级等。 将进程拥有的资源归还给 父进程或OS 2.3.3 进程的终止 引发进程的 终止事件 OS 调用进程终止原语 Destroy() 从PCB集中检索出 该进程的PCB 读出进程的状态 在Running状态:终止执 行、设置调度状态为真。 有子进程:终止所有的子 孙进程。 把对应的PCB设成空 三大类: 1、正常结束; 2、异常结束: (1)越界错误;(2)保护错; (3)特权指令;(4)非法指令;(5)运行超时;(6)等待超时;(7)算术溢出; (8) I/O故障; 3、外界干扰: (1)OS/操作员终止; (2)父进程请求; (3)父进程终止。 把PCB插入到Blocked队列 2.3.4 进程阻塞与唤醒 进程出现某事件 无法继续执行 调用Block()原语 停止进程的执行 状态Running →Blocked 保存CPU现场 转调度程序 进行新的调度 1、向系统请求共享资源失败 2、等待某种操作完成 3、新数据尚未达到 4、等待新任务的到达 进程阻塞 进程唤醒 所期待的事件出现 调用唤醒原语 Wakeup() 从阻塞队列移出 在PCB中把 Blocked→Ready 把进程插入到 就绪队列 如I/O完成、期望的数据到达、有新的任务要执行等等。 注意: Block原语和wakeup原语是一对作用刚好相反的过程,必须成对出现。 2.3.5 进程的挂起与激活 挂起 出现挂起事件 调用挂起原语 suspend() 正在执行? 置成静止就绪 活动堵塞? 置成静止堵塞 活动就绪? 置成静止就绪 转调度程序 把进程驻留到外存 进程的激活 发生激活事件 检查内存空间 调用激活原语 Active() 把进程从外存调 入到内存 检查进程状态 静止就绪? 置成活动就绪 静止堵塞? 置成活动堵塞 * * * * * * 第二章 进 程 管 理 第二章 进 程 管 理 第二章 进 程 管 理 第二章 进 程 管 理 第二章 进 程 管 理 第二章 进 程 管 理 复习 进程是什么?进程实体组成? 进程的特征?与程序的区别。 进程的状态及转换 进程特征: 动态性、并发性、独立性、异步性 进程实体(进程影像)组成:程序、数据、进程控制块(PCB)。 PCB是系统感知进程存在的唯一标识。PCB包含进程的描述信息、控制信息、资源信息等。 * 进程与程序的区别: 1)进程是一次运行的过程,属于一种动态的概念;而程序是指令的集合,是一个静态的概念。 5) 一个程序可以对应多个进程。当同一程序同时运行于若干个不同的数据集合上时,它将属于若干个不同的进程。 3)进程是有生命期的;而程序是永久的。 2)进程可以并发执行;而程序不能。 4)进程是系统资源分配的独立单位,而程序则不行。 编译程序
您可能关注的文档
最近下载
- 射线检测二级题库1.pdf
- 2025年初中信息技术初二水平会考真题含答案考点及解析 .pdf VIP
- 苏教版五年级下册数学第四单元 分数的意义和性质----假分数化成整数或带分数.doc
- 05S804 矩形钢筋混凝土蓄水池.docx
- 2025年全国国家版图知识竞赛(中小学组)题库及答案.doc
- 小学数学一年级下册半期试卷西师版.pdf
- 2024湖南新华书店集团校园招聘163人高频考题难、易错点模拟试题(共500题)附带答案详解.docx
- 中华慈善总会格列卫患者援助项目再次申请表201412版.pdf
- 2025年长春汽车职业技术大学单招职业倾向性测试题库(含答案).docx VIP
- 2025年初中信息科技学业水平考试题库及答案 .pdf VIP
文档评论(0)