操作系统第二章进程的描述与控制20169资料.pptVIP

  • 1
  • 0
  • 约1.1万字
  • 约 57页
  • 2017-06-11 发布于湖北
  • 举报

操作系统第二章进程的描述与控制20169资料.ppt

§2.3 进程控制 (三) 二.内核的功能 1)中断处理 中断是OS内核最重要的功能之一。系统中的所有中断 都由内核响应。中断是进程并发执行的基础, OS是由中断驱动的。 2)原语操作 原语操作包括涉及CPU管理,进程管理,存储管理,设备管理,文件管理以及起支撑功能的系统统计和监测的各种基本操作。 3) 时钟管理 OS的许多重要操作,如:按时间片轮转调度,实时系统中的截止时间控制等,都依赖于时钟管理。 操作系统的内核 Linux单内核结构 用户态 系统库(函数库) 应用程序 系统调用接口 模块 内核(进程管理、存储管理、文件管理、设备管理、网络管理) 设备 驱动 计算机硬件 核心态 单内核 操作系统提供的用户接口 UNIX/Linux系统程序、库函数、系统调用分层关系 用户 操作系统 (进程管理、存储管理、文件管理、设备管理等) 标准库函数 (打开、关闭、读、写、创建、撤销等) 标准系统程序(实用程序) (汇编、编译、编辑、Shell等) 用户接口 库函数 接口 系统调用 接口 硬件 (处理器、存储器、磁盘、打印机、终端等) 用 户 态 核 心 态 操作系统提供的程序接口 应用程序、库函数、系统调用的调用关系链 调用fprintf( ) 应用程序 C函数库 内核 系统调用处理程序 C库中的fprintf( ) 封装程序 C库中的write( ) 封装程序 用户态 核心态 sys_write( )内核函数 §2.3 进程控制 (五) 创建原语 create() 撤消原语 destroy() 阻塞原语 block() 唤醒原语 wakeup() 挂起原语 suspend() 激活原语 active() 三 . 进程控制原语 1. 引起创建进程的事件 用户登录。 (2) 作业调度。 (3) 提供服务。 (4) 应用请求。 2.2 进 程 控 制 §2.3 进程控制 (四) 创建进程有两种方式:由系统程序模块创建,或由父进程创建。 算法步骤: 1. 向PCB集合申请一个空闲的PCB,并获取其内部标识; 2. 将有关信息填入PCB; 3. 将该进程置为就绪状态,并插入就绪队列。 创建原语 create() 对进程的控制一般通过原语操作实现。 2.2 进 程 控 制 进程的创建 进程图(Process Graph) 图 进程树 创建原语 (create) 创 建 原 语 算 法 查PCB集 有空PCB N 创建失败 Y 取空表PCB(i) 将参数填入PCB(i) 将PCB(i)插入就绪队列 引起进程终止的事件 1) 正常结束 2) 异常结束 ① 越界错误 ② 保护错 ③ 非法指令 ④ 特权指令错 ⑤ 运行超时 ⑥ 等待超时 ⑦ 算术运算错 ⑧ I/O故障 3) 外界干预 ① 操作员或操作系统干预。 ② 父进程请求 ③ 父进程终止 §2.3 进程控制 (四) 算法步骤: 1. 根据外部标识检索PCB集,找到要撤消的PCB; 2. 从队列中撤消该进程 及其子孙进程,通常在一个递归过程中实现; 3. 释放被撤消进程所占有的资源,撤消进程控制块。 撤消原语 destroy() 当进程完成或产生异常中断时,应立即撤消,并释放其所有资源。 撤消原语 (destroy) 撤 消 原 语 算 法 查PCB集和进程家族 有此PCB? N 出错处理 Y 释放进程所占资源 释放PCB(i)结构 该PCB有子进程? Y N 进程的阻塞与唤醒 引起进程阻塞和唤醒的事件 请求系统服务 2) 启动某种操作 3) 新数据尚未到达 4) 无新工作可做 §2.3 进程控制 (五) 进程在执行过程中,需要等待某些条件发生时,由该进程调用阻塞原语把进程从执行状态转换为阻塞状态。 算法步骤: 中断CPU执行,将CPU的当前状态保存到PCB的

文档评论(0)

1亿VIP精品文档

相关文档