欢迎来到天天文库
浏览记录
ID:39049621
大小:631.81 KB
页数:94页
时间:2019-06-24
《中断与处理器调度》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章中断与处理机调度3.1中断与中断系统3.2处理机调度3.3调度级别与多级调度3.4实时调度3.5多处理机调度3.6系统举例操作系统是中断驱动的!Interruptdriven3.1中断与中断系统3.1.1中断的概念3.1.2中断装置3.1.3中断处理程序3.1.1中断的概念处理机在运行过程中,出现了某一事件,必须中止正在运行的程序,转去处理这个事件,然后再返回原来运行的程序,这一过程称为中断。中断系统:中断装置(硬件)中断处理程序(软件)3.1.2中断装置发现并响应中断的硬件机构识别中断源,当有
2、多个中断源时,按紧迫程度排队;保存现场;引出中断处理程序。中断响应和处理的过程正运行程序16处理程序4PSW’,PC’PC’:PSW,PC系统桟psw,pc……...253HALOS中断3.1.2.1中断源与中断字中断源引起中断的事件。中断寄存器保存与中断事件相关信息的寄存器。中断字中断寄存器的内容。例:IO中断:设备状态寄存器。3.1.2.2中断类型与中断向量强迫性中断运行程序不期望的时钟中断IO中断控制台中断硬件故障中断powerfailure内存校验错程序性中断越界,越权缺页溢出,除0非法指令自
3、愿性中断运行程序期望的系统调用访管指令系统调用fd=open(fname,mode)访管指令准备参数svcn取返回值3.1.2.2中断类型与中断向量中断装置中断处理程序运行程序访管指令运行程序中断装置中断处理程序clockIOconsolePowerfailuremalfunction强迫中断:自愿中断:SVCntrapn3.1.2.2中断类型与中断向量中断向量:中断处理程序的运行环境与入口地址(PSW,PC)每类中断事件有一个中断向量,中断向量的存放位置是由硬件规定的,中断向量的内容是OS在系统初始
4、化时设置好的。中断向量mode应为系统态3.1.2.2中断类型与中断向量PSW1,PC1时钟中断向量PSW2,PC2I/O中断向量PSW3,PC3console中断向量PSW4,PC4硬件故障PSW5,PC5程序错误……PSWn,PCn访管中断向量00000008001600240030…0090时钟中断处理程序PC1:I/O中断处理程序PC2:访管中断处理程序PCn:…系统空间3.1.2.3中断嵌套与系统栈一般原则:高优先级别中断可以嵌入低优先级中断实现方法:中断响应后立即屏蔽不高于当前中断优先级的
5、中断源。3.1.2.3中断嵌套与系统栈中断响应后一般需要进一步保存现场关中断(屏蔽所有中断)进一步保存现场(通用寄存器等)开中断(或开放高优先级中断)…...中断处理…...关中断(屏蔽所有中断)恢复现场开中断(或开放高优先级中断)中断返回3.1.2.3中断嵌套与系统栈(Cont.)……目态PSW1:PC1……管态PSW2:PC2……管态PSWn:PCn…中断嵌套:……3.1.2.3中断嵌套与系统栈(Cont.)……PSWn-1PCn-1……PSW2PC2PSW1PC1栈顶指针:系统栈:3.1.2.4
6、中断优先级与中断屏蔽中断优先级:硬件规定的中断响应次序,依据:紧迫程度;处理时间。中断屏蔽:高优先级中断事件处理不受低优先级中断打扰;程序调整中断响应次序。3.1.3中断处理程序强迫性中断自愿性中断保存现场信息取中断字分析中断原因保存现场信息取调用号分析何种系统调用中断处理(如等待转dispatcher)继续处理嵌套中断系统栈恢复现场返回上层中断需要切换进程系统栈恢复现场返回目态程序转dispatcherTFFT3.1.3.1IO中断处理正常结束继续传输;唤醒相关进程。传输错误复执(eg.3次);报告
7、系统操作员。3.1.3.2时钟中断处理Housekeeping进程管理重新计算进程调度参数(eg.动态优先数)实现软时钟,启动定时程序硬时钟5ms发生一次中断,软时钟50ms考虑进程切换3.1.3.3控制台中断处理一个控制按钮,一个中断向量,一个中断处理程序。3.1.3.4硬件故障处理电源故障处理掉电:内存,寄存器外存停止设备停止处理机恢复:启动处理机启动设备外存内存,寄存器UseUPSforcriticalapplications3.1.3.4硬件故障处理(cont.)内存故障处理海明校验,奇偶
8、校验错误划出系统报告操作员3.1.3.5程序性中断的处理只能由操作系统处理的中断影响系统或其它进程越界,非法指令,(处理:终止进程、调试)需要系统管理或协助页故障,缺段,(处理:动态调入)可以由用户自己处理的中断不影响系统和其它进程除0,溢出,(处理:用户处理,或OS处理)应用程序自己处理中断调试语句:on<中断条件><中断续元入口>例如:ongotoLA;除0中断时转LA处理除0中断时转LB处理ong
此文档下载收益归作者所有