- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2016操作系统PPT中断技术汇编
2.2中断技术
2.2.1 中断概念
2.2.2 中断源分类
2.2.3 中断和异常的响应及服务
2.2.4 中断事件处理
2.2.5 中断优先级和多重中断
2.2.6 Linux中断处理
2.2.7 Windows 2003中断处理
2.2.1中断的概念
?请求系统服务,
?实现并行工作,
?处理突发事件,
?满足实时要求,
都需要打断处理器正常的工作,为此,提出了中断概念。
中断的定义
中断是指程序执行过程中,遇到急需处理的事件时,暂时中止CPU上现行程序的运行,转去执行相应的事件处理程序,待处理完成后再返回原程序被中断处或调度其他程序执行的过程。
中断源分类
中断源分类(4)
外中断(中断或异步中断)--是指来自处理器之外的中断信号,包括时钟中断、键盘中断、它机中断和设备中断等;外中断又分可屏蔽中断和不可屏蔽中断,每个不同中断具有不同的中断优先级,表示事件的紧急程度,在处理高一级中断时,往往会屏蔽部分或全部低级中断。
内中断(异常或同步中断)--是指来自处理器内部,通常由于程序执行中,发现与当前指令关联的、不正常的、或是错误的事件。
中断和异常的区别
中断是由与现行指令无关的中断信号触发的(异步的),且中断的发生与CPU处在用户模式或内核模式无关,在两条机器指令之间才可响应中断,一般来说,中断处理程序提供的服务不是为当前进程所需的;
异常是由处理器正在执行现行指令而引起的,一条指令执行期间允许响应异常,异常处理程序提供的服务是为当前进程所用的。异常包括很多方面,有出错(fault),也有陷入(trap)等。
Linux的异常
Linux为例,异常按错误报告方式分四种:
故障、陷阱、
终止、编程异常。
? 故障发生时保存的返回指令地址指向触发异常的当前那条指令,故障处理后会重新执行。编程异常和陷阱是由于执行访管指令引起的同步操作,异常返回时,回到触发异常的下一条指令。
硬中断与软中断
中断和异常要通过硬件设施来产生中断请求,是硬中断。
软中断是利用硬中断的概念,用软件方法对中断机制进行模拟,实现宏观上的异步执行效果。
软中断分两种:“信号”和“软件中断”。
2.2.3中断和异常的响应及服务
CPU响应中断的过程:
在执行完当前指令后,或在执行当前指令的中途,根据中断源所提供的中断向量,在主存中找到相应服务程序的入口地址并调用此服务程序。
异常响应过程:
中断/异常响应要做四件事
发现中断源:
保护现场:
转向处理中断/异常事件的处理程序:
恢复现场:
2.2.4 中断事件处理
1 中断和异常的一般处理过程
2 硬件故障中断
3 程序性中断
4 I/O中断
5 访管中断
1 中断处理程序
处理中断事件的程序称为中断处理程序。它的主要任务是处理中断事件和恢复正常操作
不同中断源对应不同中断处理程序,故快速找到中断处理程序的入口地址是一个关键问题
中断处理程序主要做四项工作:
保护未被硬件保护的一些必需的处理状态
识别各个中断源,分析产生中断的原因
处理发生的中断事件
恢复正常操作
2、机器故障中断事件的处理
事件是由硬件故障产生的,排除故障须进行人工干预。中断处理能做的工作是:保护现场,防止故障蔓延,报告给操作员并提供故障信息以便维修和校正,及对程序中所造成的破坏进行估价和恢复。
3、程序性中断事件的处理
终止程序执行,报告情况,请求干预
转交给用户处理
操作系统标准处理
4、I/O中断的处理
I/O中断种类较多,处理方法各异
1)I/O操作正常结束后的处理
2)I/O操作发生故障后的处理
3)I/O操作发生异常后的处理
4)设备报到或设备结束的处理
5、访管中断的处理(1)
系统程序或用户程序执行访管指令而引起的中断,它表示运行程序对操作系统功能的调用,所以,也称系统调用,可以看作是机器指令的一种扩充。
访管中断的处理(2)
系统调用机制通过特殊硬指令和中断系统来实现。共性处理流程:
用户程序执行n号系统调用
通过中断系统进入访管中断处理,保护现场
通过系统调用入口表,按功能号跳转找到相应功能入口地址
执行相应例行程序,结束后正常情况返回系统调用的下一条指令执行
6时钟中断(1)
时钟是操作系统进行调度工作的重要工具,如让分时进程作时间片轮转、让实时进程定时发出或接收控制信号、系统定时唤醒或阻塞一个进程、对用户进程进行记账
时钟可分成绝对时钟和间隔时钟两种
时钟中断(2)
1) 绝对时钟服务
提供以下功能的函数:
update_clock( )更新当前时间;
get_time( )返回当前时钟值;
set_clock( )把当前时间设置为新值。
时钟中断(3)
2) 间隔
您可能关注的文档
最近下载
- 管线保护方案.pdf VIP
- DB5101T 13-2018 成都市智慧城市市政设施 城市道路桥梁基础数据规范.pdf VIP
- 变电站一次设备、二次设备巡视要点.pptx VIP
- 养老机构医养结合服务规范.pdf VIP
- 第11课 “韩信点兵”筛选法的实现 课件 2025-2026学年六年级上册信息技术浙教版.pptx VIP
- 基于Python的五子棋游戏设计.docx VIP
- 《岳阳楼记》的文言虚词.doc VIP
- Python语言与经济大数据分析知到智慧树期末考试答案题库2025年上海财经大学.docx VIP
- 初中英语英语完形填空100篇(二)配答案详解.pdf VIP
- 电梯制造项目可行性研究报告(参考范文).docx
原创力文档


文档评论(0)