- 1、本文档共93页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * * * * * * * 典型的中断处理(1):I/O中断 由I/O设备的控制器或者通道发出 两类I/O中断: I/O操作正常结束 如果要继续I/O操作,需要在准备好以后重新启动I/O,若请求I/O程序正处于等待I/O状态,则应将其唤醒 I/O异常 需要重新执行失败的I/O操作 重试次数有上限,次数过大,系统将判定硬件故障 系统多道能力的重要推动力量,时钟中断处理程序通常做与系统运转、管理和维护相关的工作,包括: 维护软件时钟:系统有若干个软件时钟,控制定时任务以及进程的处理器时间配额,时钟中断需要维护、定时更新这些软件时钟 处理器时间调度:维护当前进程时间片软件时钟,并在当前进程时间片到时以后运行调度程序选择下一个被调度的进程 控制系统定时任务:通过软件时钟和调度程序定时激活一些系统任务,如监测死锁、系统记帐、系统审计等 实时处理 典型的中断处理(2):时钟中断 典型的中断处理(3):硬件故障中断 硬件故障中断处理程序一般需要做的工作: 保存现场,使用一定警告手段,提供些辅助诊断信息 在高可靠系统中,中断处理程序还要评估系统可用性,尽可能恢复系统 如:Windows 2000/XP,关键硬件发生故障时,如显示卡损坏,出现系统蓝屏,系统实际上进入相应故障处理程序,发现故障不可恢复,则在屏幕上打印出发生故障时程序位置,并开始进行内存转储(将一定范围的内存内容写上磁盘,是系统故障时的全系统“快照”),备日后故障诊断 程序指令出错、指令越权或者指令寻址越界而引发 两类处理方法: 只能由操作系统的相关扩展功能模块完成 多为程序试图作不能做的操作引起的系统保护 如访问合法的、但不在内存虚地址内,引发页故障页故障一般会引发OS虚存模块作一个页面换入 可由程序自己完成,如一些算术运算错误 不同程序可有不同处理方法,所以很多OS提供由用户自己处理这类中断的“绿色通道” 系统调试中断(断点中断、单步跟踪)也可被用户程序处理,用以支持各种程序调试 典型的中断处理(4):程序性中断 典型的中断处理(5):系统服务请求(自愿性中断) 系统服务请求由处理器专用指令(访管指令)激发 如x86处理器提供int指令,用来激发软件中断 其他不少处理器则提供系统调用指令syscall 执行专用指令的结果是系统被切换到管态,并且转移到一段专门OS程序处开始执行 指令格式通常是指令名加请求服务识别号(中断号) OS利用处理器提供的这种接口建立系统服务体系 处理器一般不负责定义系统调用所传递的参数格式 DOS:21h号中断的系统服务功能以及参数列表 现代操作系统一般不提供直接使用系统调用指令的接口,通常做法:提供一套方便、实用的应用程序函数库(应用程序设计接口API) 从应用层面重新封装系统调用 屏蔽复杂的系统调用传参问题 高级语言接口,有助于快速开发 有的系统在更高层面提供系统程序设计模板库和类库 如Windows 2000/XP提供封装系统用Win32 API和高层编程机制MFC以及ATL Linux提供封装系统调用、符合POSIX标准 API和C运行库 典型的中断处理(6):系统服务请求实例 设备控制器或其他系统硬件发出中断 处理器完成当前指令的执行 处理器接受中断 处理器将PSW和PC推入系统堆栈 处理器根据中断类型读入新的PC值 中断系统硬件完成的工作 保存进程状态的其余信息 进程中断 恢复进程状态信息 从系统堆栈恢复原PSW和PC 中断系统软件完成的工作 强迫性中断事件 自愿性中断事件 保存现场信息 保存现场信息 取出中断码 取出访管号 分析中断原因 分析何种系统调用 转相应处理程序 是否中断嵌套 由系统恢复现场 由系统恢复现场 转低级调度程序 返回上层中断 返回目态程序 需要切换进程 T F F T 四、I/O技术 I/O控制使用下面几种技术: 程序控制 中断驱动 直接存储器存取(DMA) 通道 1、程序控制I/O技术 由处理器提供I/O相关指令来实现 I/O处理单元处理请求并设置I/O状态寄存器相关位 不中断处理器,也不给处理器警告信息 处理器定期轮询I/O单元的状态,直到处理完毕 I/O软件包含直接操纵I/O的指令 控制指令: 用于激活外设,并告诉它做什么 状态指令: 用于测试I/O控制中的各种状态和条件 数据传送指令: 用于在设备和主存之间来回传送数据 主要缺陷: 处理器必须关注I/O处理单元的状态,因而耗费大量时间轮询信息,严重地降低了系统性能 2、中断驱动I/O技术 为了解决程序控制I/O方法的主要问题 应该让处理器从轮询任务中解放出来 使I/O操作和指令执行并行起来 具体作法: 当I/O处理单元准备好与设备交互的时候 通过物理信号通知处理器,即中断处理器的执行 3、DMA技术( 1/3) 中断的引
您可能关注的文档
- §2`第一章节课件(1382KB).ppt
- §2“承包制”班级管理模式20班干部承包人(490KB).ppt
- §7.Linux企业级应用Linux企业级应用12章节(611KB).pptx
- §2“承包制”班级管理模式210学生干部管理系统(287KB).ppt
- §7.win8风格触屏联动效果课件模板(3250KB).ppt
- §7.背影(1060KB).ppt
- §2“承包制”班级管理模式220备品承包管理系统(296KB).ppt
- §7.闭合电路欧姆定律闭合电路的欧姆定律4章节(416KB).ppt
- §7.闭合电路欧姆定律闭合电路欧姆定律1章节(429KB).ppt
- §2“承包制”班级管理模式230专项任务管理系统(280KB).ppt
文档评论(0)