中断技术1ppt课件.ppt
《中断技术1ppt课件.ppt》由会员分享,可在线阅读,更多相关《中断技术1ppt课件.ppt(112页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、中断技术1ppt课件 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望中断技术(2)2.2.7实例研究:Windows2000/XP中断处理2.2.8实例研究:Solaris中断处理2.2.9实例研究:Linux中断处理2.2.1中断的概念(1)请求系统服务,实现并行工作,处理突发事件,满足实时要求,都需要打断处理器正常的工作,为此,提出了中断概念。中断的概念(2)w中断中断是指程序执行过程中,当发生某个事件时,中止CPU上现行程序的运行,引出处理该事件的程序执行的
2、过程。中断的概念(3)w中断源。w中断装置。w中断机制的共性:当中断事件发生后,它能改变处理器内操作执行的顺序,可见中断是现代操作系统实现并发性的基础之一。2.2.2中断源分类(1)从中断事件的性质和激活的手段来说,可以分成两类:强迫性中断事件强迫性中断事件 自愿性中断事件自愿性中断事件 中断源分类(2)强迫性中断事件不是正在运行的程序所期待的,而是由于某种事故或外部请求信息所引起的,分为:w机器故障中断事件。w程序性中断事件。w外部中断事件。w输入输出中断事件。中断源分类(3)自愿性中断事件是正在运行的程序所期待的事件。正在运行的程序对操作系统有某种需求,一旦机器执行到一条访管指令时,便自愿
3、停止现行程序的执行而转入访管中断处理程序处理。中断源分类(4)两类中断事件 运行程序中断处理程序中断装置中断处理程序中断装置机器故障中断事件程序性中断事件外部中断事件输入输出中断事件运行程序访管指令中断源分类(5)按照中断信号的来源,可把中断分为外中断和内中断外中断和内中断两类:外中断(又称中断)指来自处理器和主存之外的中断。内中断(又称异常)指来自处理器和主存内部的中断。中断源分类(6)外中断包括:电源故障中断、时钟中断、控制台中断、它机中断和I/O中断等。不同的中断具有不同的中断优先级,处理高一级中断时,往往会屏蔽部分或全部低级中断。中断源分类(7)内中断包括:通路校验错、主存奇偶错、非法
4、操作码、地址越界、页面失效、调试指令、访管中断、算术操作溢出等各种程序性中断。异常是不能被屏蔽的,一旦出现应立即响应并加以处理。中断源分类(8)中断和异常的区别(1):中断中断是由与现行指令无关的中断信号触发的(异步的),且中断的发生与CPU处在用户模式或内核模式无关,在两条机器指令之间才可响应中断,一般来说,中断处理程序提供的服务不是为当前进程所需的,如时钟中断、硬盘读写服务请求中断;中断源分类(9)中断和异常的区别如下(2):异常异常是由处理器正在执行现行指令而引起的,一条指令执行期间允许响应异常,异常处理程序提供的服务是为当前进程所用的。异常包括很多方面,有出错(fault),也有陷入(
5、trap)。中断源分类(10)出错和陷入的区别如下:它们发生时保存的返回指令地址不同,出错保存指向触发异常的那条指令,而陷入保存指向触发异常的那条指令的下一条指令。从异常返回时,出错会重新执行那条指令,而陷入就不会重新执行那条指令。如缺页异常是一种出错,而陷入主要应用在调试中。中断源分类(11)wIBM中大型机操作系统使用了上述第一种分类方法,wWindows2000/XP则采用了上述第二种分类方法。中断源分类(12)w中断和异常要通过硬件设施来产生中断请求,可看作硬中断硬中断。w不必由硬件发信号而能引发的中断称软中断,软中断软中断是利用硬件中断的概念,用软件方式进行模拟,实现宏观上的异步执行
6、效果。中断源分类(13)w软中断软中断是由内核或进程对某个进程发出的中断信号,可看作内核与进程或进程与进程之间用来模拟硬中断的一种信号通信方式。w硬中断和软中断硬中断和软中断共同点和不同点:2.2.3中断装置(1)w发现中断源并产生中断的硬件称中断装置。w所有计算机系统都采用硬件和软件结合的方法实现中断处理。中断装置(2)中断装置中断装置主要做以下三件事:w发现中断源。w保护现场。w启动处理中断事件的程序。中断装置(3)IBM中大型机中断响应过程 外中断旧PSW访管中断旧PSW程序中断旧PSW机器故障中断旧PSWI/O中断旧PSW外中断新PSW访管中断新PSW程序中断新PSW机器故障中断新PS
7、WI/O中断新PSW18202830385860687078现行PSW中断时保存现行PSW中断时装入现行PSW 中断后恢复PSW主存专用双字单元 (16进制)装配中断码中断装置(4)IBM PC机中断的响应过程 IPCSPSW现行PSW 寄存器新IP新CS老IP老CS老PSW新栈顶主存新PSW2.2.4中断处理程序(1)w处理中断事件的程序称为中断中断处理程序处理程序。它的主要任务是处理中断事件和恢复正常操作。w不同中断源对应不同中断处理程序,故快速找到中断处理程序的入口地址是一个关键问题。中断处理程序(2)中断处理程序主要做四项工作:w保护未被硬件保护的一些必需的处理状态。w识别各个中断源,
8、分析产生中断的原因。w处理发生的中断事件。w恢复正常操作。2.2.5中断事件具体处理方法1 1、机器故障中断事件的处理、机器故障中断事件的处理 事件是由硬件故障产生的,排除故障须进行人工干预。中断处理能做的工作是:保护现场,防止故障蔓延,报告给操作员并提供故障信息以便维修和校正,及对程序中所造成的破坏进行估价和恢复。机器故障中断事件的处理 下面是一些硬件失效中断事件的处理办法:1 1)电源故障的处理)电源故障的处理 2 2)主存储器故障的处理)主存储器故障的处理2、程序性中断事件的处理(1)w程序性中断事件两种处理办法w中断续元处理需要的设施 调试语句 中断续元入口表w中断续元处理过程 程序性
9、中断事件的处理(2)on 表示指定条件的中断发生时,由中断续元进行处理。例如:on fixed overflow go to LA;每当发生定点溢出时,转向以LA为标号的语句。程序性中断事件的处理(3)发生在不同地方的同一种程序性中断事件允许用户采用不同的处理方法。例如,在执行了上述调试语句后又执行:on fixed overflow go to LB;表示再发生溢出时将转向LB去处理。程序性中断事件的处理(4)中断续元入口表的形式如下:中断条件0 中断条件1 0 0 中断续元入口0 中断续元入口1 中断续元入口n程序性中断事件的处理(5)中断续元的处理过程和原则(1):(1)编译程序编译到o
10、n语句时,生成填写相应中断续元入口表的目标代码段;(2)程序运行执行到on语句时,根据中断条件号,将中断续元入口填入相应栏,这是通过执行上述代码段来实现的;(3)执行同一中断条件号的on语句时,中断续元入口被填入同一栏,从而,用户可在他的程序的不同部分对同一中断条件采用不同的处理方法;程序性中断事件的处理(6)中断续元的处理过程和原则(2):(4)每当中断条件发生时,检查中断续元入口表相应栏,或转入中断续元处理,或进行操作系统标准处理;(5)程序性中断处理允许嵌套,应预先规定嵌套重数,但不允许递归。3、外部中断事件的处理 1)时钟中断事件的处理(1)w时钟是操作系统进行调度工作的重要工具,如让
11、分时进程作时间片轮转、让实时进程定时发出或接收控制信号、系统定时唤醒或阻塞一个进程、对用户进程进行记账。w时钟可以分成绝对时钟和间隔时钟两种。时钟中断事件的处理(2)w系统设置绝对时钟寄存器,定时地把该寄存器的内容加1。如果开始时这个寄存器的内容为0,那么,只要操作员告诉系统开机时的年、月、日、时、分、秒,以后就可推算出当前的年、月、日、时、分、秒。w计算当前时间时,只要按时钟中断的次数和绝对时钟寄存器的内容推算就可得到。时钟中断事件的处理(3)w间隔时钟是定时将一个间隔时钟寄存器的内容减1,当间隔时钟寄存器的内容为0时,产生一个间隔时钟中断,起到闹钟的作用,意味着预定的时间到了。操作系统经常
12、利用间隔时钟作控制调度。时钟中断事件的处理(4)操作系统有关时钟的任务包括内容:w维护绝对日期和时间;w防止进程的运行时间超出其允许值,发现陷入死循环的进程;w对使用CPU的用户进程记账;w处理进程的间隔时钟(闹钟);w对系统的功能或部件提供监视定时器。Linux系统定时器(1)wLinux的时钟滴答(clock tick)wLinux系统时间的测量基准jiffies(瞬时)(一个全局变量)wUNIX纪元时间Linux系统定时器(2)Linux中两种类型系统定时器:w老的定时器机制 w新的定时器机制 Linux系统定时器(3)031timer-structtimer-table timer-a
13、ctive31 0 expires *fn()timer-structtimer-listtimer-list*next*prevexpiresdatafunction()timer-list*next*prevexpiresdatafunction()*next*prevexpiresdatafunction()expires *fn()timer-listLinux系统定时器(4)Linux间隔定时器有三种类型:wrealreal 这种间隔定时器按实际时间计时,时间到发送SIGALRM信号。wvirtualvirtual 这种间隔定时器仅当进程正在用户态下执行时才计时,时间到发送SIGVT
14、ALRM信号。wprofileprofile 这种间隔定时器当进程执行在用户态或核心态时都计时,时间到时发送SIGROF信号。Linux系统定时器(5)wLinux允许进程同时启动多个定时器,通过在一个进程中设定上述三个定时器,就可以了解一个进程在用户态、内核态和总的执行时间。Linux时钟系统调用 时钟系统调用完成时钟的读取、设置和校准功能,为计时服务提供支持,也为用户查询当前系统时间提供接口。wlsys-time:读取系统时间。wlsys-stime:设置系统时间。wlsys-gettimeofday:读取系统时间和时区。wlsys-settimeofday:设置系统时间和时区。wlsys
15、-adjtimex:用于在网络环境下调整系统时钟。2)控制台中断事件的处理w操作员可以利用控制台开关请求操作系统工作,当使用控制台开关后,就产生一个控制台中断事件通知操作系统。操作系统处理这种中断就如同接受一条操作命令一样,转向处理操作命令的程序执行。4、I/O中断的处理(1)I/O中断种类较多,处理方法各异。1)I/O操作正常结束后的处理2)I/O操作发生故障后的处理3)I/O操作发生异常后的处理4)设备报到或设备结束的处理 I/O中断的处理(2)1)I/O操作正常结束后的处理 把正在等待输入输出操作完成的进程设置为可执行的状态,然后,要查看是否有等待该设备或通道的其他进程,若有则释放。I/
16、O中断的处理(3)2)I/O操作发生故障后的处理 设备本身的故障,可先向相应设备发命令索取状态字节,进行分析就可知道故障的确切原因。如果该设备的控制器有复执功能,就组织复执。如果没有,对某些故障,可组织软复执。对不能复执或复执多次仍不能克服的故障,系统向操作员报告,请求人工干预。I/O中断的处理(4)3)I/O操作发生异常后的处理 设备在操作中发生了某些特殊事件,操作结束发生中断时,要将这个情况向系统报告。系统从设备状态字节中的设备特殊位为,可判知设备在操作中发生了某个特殊事件。I/O中断的处理(5)4)设备报到或设备结束的处理 如果是设备上来的“设备报到”或“设备结束”等异步信号,表示有设备
17、接入可供使用或断开暂停使用,操作系统应修改系统表格中相应设备的状态。5、自愿中断事件的处理(1)w系统程序或用户程序执行访管指令而引起的中断,它表示运行程序对操作系统功能的调用,所以,也称系统调用,可以看作是机器指令的一种扩充。自愿中断事件的处理(2)系统调用机制通过特殊硬指令和中断系统来实现。共性处理流程:w用户程序执行n号系统调用w通过中断系统进入访管中断处理,保护现场w通过系统调用入口表,按功能号跳转找到相应功能入口地址w执行相应例行程序,结束后正常情况返回系统调用的下一条指令执行2.2.6中断优先级和多重中断(1)1、中断的优先级2、中断的屏蔽3、多重中断事件的处理 中断优先级和多重中
18、断(2)1、中断的优先级 计算机执行的每一瞬间,可能有几个中断事件同时发生,中断装置如何来响应同时发生的中断呢?它按照预定顺序来响应,这个预定顺序称中断的优先级中断的优先级,首先响应优先级高的中断事件。中断优先级和多重中断(3)如何确定中断的优先级?计算机系统中,各中断源的优先顺序是根据某个中断源或中断级若得不到及时响应,造成计算机出错的严重性程度来定。中断优先级和多重中断(4)IBM 370系统中断优先级由高到低的 顺序是:机器校验中断自愿性中断程序性中断外部中断输入输出中断重启动中断。中断优先级只表示中断装置响应中断 的次序,并不表示处理它的先后顺序。中断优先级和多重中断(5)2、中断的屏
19、蔽 主机可允许或禁止某类中断的响应,如允许或禁止所有的I/O中断、外部中断、及某些程序性中断。有些中断是不能被禁止的,例如,计算机中的自愿性访管中断就不能被禁止。中断优先级和多重中断(6)3、多重中断事件的处理 中断正在进行处理期间,这时CPU又响应了新的中断事件,于是暂时停止正在运行的中断处理程序,转去执行新的中断处理程序,这就叫多重中断(又称中断嵌套)多重中断(又称中断嵌套)。中断优先级和多重中断(7)对于多个中断,可能是同一中断类型的不同中断源,也可能是不同类型的中断。对于前者,一般由同一个中断处理程序按预定的次序分别处理之;中断优先级和多重中断(8)对于多个不同类型的中断,区别不同情况
20、作如下处理:w禁止再发生中断 运行中断处理程序时,对任何新产生的中断不予理睬,这可以通过屏蔽某些中断来实现。中断优先级和多重中断(9)w定义中断优先级 对必须处理且优先级更高的中断源,允许在运行中断例行程序时,可响应这些中断,系统负责保护被中断的中断处理例行程序的现场,再转向处理新中断的例行程序。中断优先级和多重中断(10)w响应并进行中断处理 运行中断处理例行程序时,如果出现任何程序性中断,一般情况下,表明这时中断处理程序有错误,应立即响应并进行处理。中断优先级和多重中断(11)中断处理程序的PSW中,应屏蔽哪些中断源,将由系统设计而定,需要考虑的情况有:硬件中断优先级,应用的需要,软件处理
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 中断 技术 ppt 课件
限制150内