windows操作系统概述.ppt

上传人:max****ui 文档编号:11498411 上传时间:2020-04-25 格式:PPT 页数:23 大小:289.50KB
返回 下载 相关 举报
windows操作系统概述.ppt_第1页
第1页 / 共23页
windows操作系统概述.ppt_第2页
第2页 / 共23页
windows操作系统概述.ppt_第3页
第3页 / 共23页
点击查看更多>>
资源描述
第三讲中断系统目的与要求:理解内核程序运行机制中断/异常(陷入)机制及中断/异常(陷入)处理过程。重点与难点:中断系统概念及中断/异常(陷入)处理过程。作业:1,5,6,中断的引入:为了开发CPU和通道(或设备)之间的并行操作,当CPU启动通道(或设备)进行输入输出后,通道(或设备)可以独立工作,CPU也可以转去做与此次输入输出不相关的其它任务。通道(或设备)输入输出完成后,必须告诉CPU,让CPU继续输入输出以后的事情,通道(或设备)通过向CPU发中断告诉CPU此次输入输出结束。,第二章操作系统结构2.1中断/异常(陷入),异常(陷入)引入:用于表示CPU执行指令时本身出现算术溢出,零做除数,取数时的奇偶错,访存指令越界,或就是执行了一条所谓“陷入指令”(用于实现系统调用)等情况,这时中断当前的执行流程,转到相应的错误处理程序或陷入处理程序。中断/异常(陷入):指系统发生某个异步/同步事件后,处理机暂停正在执行的程序,转去执行处理该事件程序的过程。,2.1.1中断/异常(陷入)分类,中断(外中断),异常(内中断)陷入,I/O中断,时钟中断,系统调用缺页断点指令其它程序性异常(如算术溢出等),中断(狭义)与异常(陷入)的区别:中断:与正执行指令无关,可以屏蔽异常或陷入:与正执行指令有关,不可屏蔽*,广义中断,2.1.2中断的分级与屏蔽,中断寄存器:寄存中断事件的全部触发器。中断位:每个触发器称为一个中断位,当发生某个中断事件时相应位被置上。中断序号:给中断的一个顺序编号.中断响应:由硬件在执行每一条指令的最后时刻判断是否有中断,有则无条件转入操作系统的中断处理程序.中断寄存器图示*,高级中断处理,中级中断处理,低级中断处理,中断优先级:中断的优先程度.原则上,高、低优先级中断同时到先响应高级中断。高级中断可以打断低级中断处理程序的运行,同级中断同时到时,则按位序响应。,中断优先级设计原则:一般来说,高速设备的中断优先级高,慢速设备的中断优先级低。因为高速设备的中断被处理机优先响应可以让处理机尽快地向他发出下一个I/O请求,提高高速设备的利用率。在交互式系统中也可以考虑用户响应满意优先原则。如某机上的UNIX系统把中断级别分为:时钟中断:中断优先级6级磁盘中断:中断优先级5级终端等其它外设中断:中断优先级4级,处理机优先级:指处理机正运行程序的中断响应级别。在中断处理程序运行前设置。即当处理机处理某一优先级中断时,只允许处理机去响应比该优先级高的中断,而屏蔽低于或等于该优先级的中断。中断屏蔽:指禁止处理机响应中断或禁止中断出现.,软件实现中断屏蔽图示,中断屏蔽有两种方法:硬件实现(软件置处理机优先级,硬件按系统设计时的约定屏蔽那些低优先级中断)软件实现(由软件按中断优先级约定置屏蔽寄存器)*,2.2中断/异常(陷入)响应和处理CPU能够在每条机器指令执行周期内的最后时刻扫描中断寄存器,“询问”是否有中断信号。若无中断信号,CPU继续执行程序的后续指令,否则CPU停止执行当前程序的后续指令,无条件地转入操作系统内的中断处理程序。这一过程称为中断响应。异常(陷入)是在执行指令的时候,由指令本身的原因发生的,CPU中指令的执行逻辑发现发生了异常(陷入)则转入操作系统内的异常(陷入)处理程序。,1、断点和恢复点,PC:程序计数器.指向马上要执行的那一条指令.断点:检测到中断时,处理机刚执行完的那条指令地址.恢复点:断点的逻辑后续指令地址.PC的值.现场信息:指中断那一刻确保被中断程序能继续运行的有关信息.如PC,通用寄存器,特殊寄存器等.*,几个基本概念,断点和恢复点图示,断点,恢复点,2、核心态与用户态,核心态(系统态,监督方式,管态):允许特权指令执行的状态,在此状态下地址空间也较大.用户态(用户态,用户方式,目态):一般程序所运行的状态.PS(PSW):处理机状态字.寄存处理机运行状态的寄存器.,当前处理机状态.处理机优先级各种控制位(如,外中断赋能位)*,3、中断向量,中断向量:一片存放中断处理程序入口地址和程序运行所需处理机状态字的内存单元。,硬件按中断号,异常(陷入)类型的不同通过中断向量表散转。,中断/异常(陷入)处理的一般过程,中断,异常(陷入)进入保存现场分析原因,转中断/异常(陷入)处理程序恢复现场,中断处理的流程图:,某机UNIX中断处理详细过程:,1.中断,异常(陷入)进入,硬件自动将当前PC,PS存入暂存寄存器.硬件按中断号从指定的中断向量单元中取出新的PC,PS内容装入PC,PS寄存器.将原PC,PS保存到现场保护区栈*,2.保存现场现场保存/恢复过程示例.,一个现场区栈帧的形成过程:,硬件将PS,PC压栈,且根据中断类将中断向量表中的新的PS,PC值送PS,PC寄存器.中断入口第一条为转总控程序指令,该特殊转移指令将r0压栈且将中断处理程序地址存入r0.由总控程序将新的PS压栈(因其中有陷入号信息).由总控将r1,r6压栈(r6中为栈指针,此时是上一栈帧顶或用户栈顶).由总控从新PS低五位截取trap号进入栈.总控在转相应中断(trap)处理程序时,将返回地址压栈.由各中断(trap)处理程序先将r5,r4,r3,r2压栈,返回总控时恢复r2,r3,r4,r5.*,PS硬件保存增PC长r0方nps(新ps)向r1r6总控程序保存dev(trap号)tpc(总控返回地址)r5r4处理程序保存r3r2sp,3.分析原因,转中断/异常(陷入)处理程序,总控程序直接根据r0(已存放好中断程序的入口地址)内容转子.进行中断(陷入)处理,转子时已将返回地址压栈(转子指令自动).*注:中断处理通常是向设备控制器发下一个I/O请求,并就绪原等I/O结束的进程。异常(陷入)处理包含操作系统系统调用处理,及异常时进程结束处理。,4.恢复现场(总控程序),1.回退到核态时:退栈.恢复r0,r1执行rtt指令.该指令自动将栈帧中保存的原PC,PS值装入PC,PS寄存器.2.回退到用户态时:低调(进行进程调度).退栈.恢复r0,r1执行rtt指令.该指令自动将栈帧中的PC,PS值装入PC,PS寄存器.*,主要内容中断/异常(陷入)引起系统内核程序运行中断/异常(陷入)的分类中断的分级中断/异常(陷入)响应和处理中断/异常(陷入)响应中断/异常(陷入)处理过程,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!