ch2-2.2中断技术 NJU.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch2-2.2中断技术 NJU

2.2中断技术 2.2.1中断的概念 2.2.2中断源分类 2.2.3中断装置 2.2.4中断处理程序 2.2.5中断事件的具体处理方法 2.2.6中断的优先级和多重中断 2.2.7实例研究:Windows2000/XP中断处理 2.2.8实例研究:Solaris中断处理 2.2.9实例研究:Linux中断处理 2.2.1中断的概念 ?请求系统服务, ?实现并行工作, ?处理突发事件, ?满足实时要求, 都需要打断处理器正常的工作, 为此,提出了中断概念。 中断的定义 中断是指程序执行过程中,当发生某个事件时,中止CPU上现行程序的运行,引出处理该事件的程序执行的过程。 2.2.2中断源分类(1) 从中断事件的性质和激活的手段来说,可以分成两类: ?强迫性中断事件强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为: 机器故障中断事件。 程序性中断事件。 外部中断事件。 输入输出中断事件。 ?自愿性中断事件自愿性中断事件是正在运行的程序所期待的事件。 中断源分类(2) 两类中断事件 中断源分类(3) 按照中断信号的来源,可把中断分为如下两类: ?外中断(又称中断)指来自处理器和主存之外的中断。 ?内中断(又称异常)指来自处理器和主存内部的中断。 中断源分类(4) ? 外中断包括:电源故障中断、时钟中断、控制台中断、它机中断和I/O中断等。 不同的中断具有不同的中断优先级,处理高一级中断时,往往会屏蔽部分或全部低级中断。 ? 内中断包括:通路校验错、主存奇偶错、非法操作码、地址越界、页面失效、调试指令、访管中断、算术操作溢出等各种程序性中断。 ? 异常是不能被屏蔽的,一旦出现应立即响应并加以处理。 中断和异常的区别 ?中断是由与现行指令无关的中断信号触发的(异步的),且中断的发生与CPU处在用户模式或内核模式无关,在两条机器指令之间才可响应中断,一般来说,中断处理程序提供的服务不是为当前进程所需的; ?异常是由处理器正在执行现行指令而引起的,一条指令执行期间允许响应异常,异常处理程序提供的服务是为当前进程所用的。异常包括很多方面,有出错(fault),也有陷入(trap)。 出错和陷入的区别 ? 它们发生时保存的返回指令地址不同,出错保存指向触发异常的那条指令,而陷入保存指向触发异常的那条指令的下一条指令。 ? 从异常返回时,出错会重新执行那条指令,而陷入就不会重新执行那条指令。如缺页异常是一种出错,而陷入主要应用在调试中。 硬中断与软中断 中断和异常要通过硬件设施来产生中断请求,可看作硬中断。 不必由硬件发信号而能引发的中断称软中断,软中断是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行效果。 IBM中大型机中断响应过程 IBM PC机中断的响应过程 2、程序性中断事件的处理 终止程序执行 警告用户 交给用户处理 4、I/O中断的处理(1) I/O中断种类较多,处理方法各异 1)I/O操作正常结束后的处理 2)I/O操作发生故障后的处理 3)I/O操作发生异常后的处理 4)设备报到或设备结束的处理 3多重中断事件的处理 中断正在进行处理期间,这时 CPU又响应了新的中断事件,于 是暂时停止正在运行的中断处理 程序,转去执行新的中断处理程 序,这就叫多重中断(又称中断 嵌套)。 2.2.7实例研究:Windows 2000/XP中断处理 Windows 2000/XP中断类型 中断有I/O设备、处理器时钟或定时器等,可以启用或禁用。中断是异步事件,可能随时发生,与处理器正在执行的内容无关。 异常是同步事件,它是某一个特定指令执行的结果。异常的例子是内存访问错误、调试指令及被零除。内核也将系统服务调用视作异常。 硬件和软件都可以产生中断和异常,如总线出错异常由硬件造成,而被零除异常是由软件引起的;同样,I/O设备可产生中断,而内核自身也可以发出中断。 Windows2000/XP陷阱调度 Windows2000/XP中断请求级 Windows 2000/XP中断屏蔽 Windows 2000/XP硬件中断处理 Windows 2000/XP软件中断处理 多数中断由硬件产生,但内核也为多种任务产生软件中断,包括:启动线程调度、处理计时器到时、在特定线程的描述表中异步执行一个过程及支持异步I/O等。 延迟过程调用DPC软件中断 延迟过程调用--提交DPC 异步过

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档