中断处理过程有哪些?中断处理过程的五个阶段
发布时间:2023-05-14 05:24:04
中断处理全过程指的是从中断源发出中断请求开始,CPU响应这个请求,现行程序被中断,转至中断服务程序,直到中断服务程序执行完毕,CPU再返回原来的程序继续执行的整个过程。那么具体的中断处理全过程是哪些呢,下面小编就带着大家一起具体看看吧!
中断处理过程的五个阶段
中断处理的基本过程包括中断请求、中断判优、中断响应、中断服务 和中断返回等五个阶段。
1.中断请求阶段
1)发生在CPU内部的中断(内部中断),不需要中断请求,CPU内部的中断控制逻辑直接接收处理。
2)外部中断请求由中断源提出。外部中断源利用CPU的中断输入引脚 输入中断请求信号。一般CPU设有两个中断请求输入引脚:可屏蔽中断请求输入引脚和不可屏蔽中断请求输入引脚。
1.1中断请求触发器
每个中断源发中断请求信号的时间是不确定的,而CPU在何时响应中断也 是不确定的。所以,每个中断源都有一个中断请求触发器,锁存自己的中断请求信号,并保持到CPU响应这个中断请求之后才将其清除。
1.2中断允许触发器
在CPU内部有一个中断允许触发器,当其为“1”时,允许CPU响应中断, 称为开中断。若其为“0”,不允许CPU响应中断,中断被屏蔽,称为关中断。
%%通常,当CPU复位时,中断允许触发器也复位为“0”,即关中断。当 CPU中断响应时,CPU自动关闭中断,禁止接受另一个新的中断。
%%中断允许触发器的状态可以用开中断或关中断指令来设置。
2.中断判优阶段
CPU一次只能接受一个中断源的请求,当多个中断源同时向CPU提出中断请求时,CPU必须找出中断优先级最高的中断源,这一过程称为中断判优。
中断判优可以采用硬件方法,也可采用软件方法。
2.1软件判优
CPU检测到中断请求后,首先读取中断请求寄存器的内容,逐位检测它们的状态,检测到某一位为1,就确定对应的中断源有中断请求,转去执行它的中断服务程序。
先检测哪一个,哪一个的优先级就高,后检测哪一个,哪一个优先级就低,检测的顺序就是各中断源的优先级顺序。

假设上图中输入端口地址为87FFH。有如下查询程序:
MOV DX, 87FFH
IN AL, DX ;读中断请求寄存器内容
SHR AL, 1
JC IR0 ;IRQ0有请求,转IR0
SHR AL,1
JC IR1 ;IRQ1有请求,转IR1
SHR AL,1
JC IR2 ;IRQ2有请求,转IR2
… …
软件判优耗时较长。如果中断源很多,中断的实时性就很差,但是软件判优优先权安排灵活。
2.2硬件判优
利用专门的硬件电路确定中断源的优先级,有两种常见的方式:菊花链判优电路和中断控制器判优。
2.2.1菊花链判优电路
设计思想:每个中断源都有一个中断逻辑电路,所有的中断逻辑电路形成一个链,犹如菊花链。排在链前端的中断源优先级最高,越靠后的设备优先级越低。

实现过程: CPU收到中断请求,如果允许中断,CPU发出中断响应信号。中断响应信号首先到达菊花链的前端,如果中断源1提出了中断请求,它就会截获中断响应信号,封锁它,使它不能向下一个中断源传送。不论下面的中断源有没有提出中断请求,都不可能接收到中断响应信号,因此它们的中断请求也不能被响应。
2.2.2中断控制器判优
中断控制器,如Intel8259A,可以以多种方式设置中断源的中断优先级。 中断控制器中有一个中断优先级判别器,它自动判别出目前提出中断请求的优先级最高的中断源,并将它的中断向量码送到数据总线,CPU接收中断向量码并据此找到它的中断服务程序。

3、中断响应阶段
经过中断判优,中断处理就进入中断响应阶段。中断响应时,CPU向中断源发出中断响应信号,同时:
① 保护硬件现场;
② 关中断;
③ 保护断点;
④ 获得中断服务程序的入口地址。
4、中断服务阶段
中断服务程序的一般结构为:
1)保护现场。 在中断服务程序的起始部分安排若干条入栈指令,将各寄存器的内容压入堆栈保存。
2)开中断。 在中断服务程序执行期间允许级别更高的中断请求中断现 行的中断服务程序,实现中断嵌套。
3)中断服务。 完成中断源的具体要求。
4)恢复现场。 中断服务程序结束前,必须恢复主程序的中断现场。通常是将保存在堆栈中的现场信息弹出到原来的寄存器中。
5)中断返回。 返回到原程序的断点处,继续执行原程序。
5.中断返回阶段
返回到原程序的断点处,恢复硬件现场,继续执行原程序。
中断返回操作是中断响应操作的逆过程。


猜你喜欢
- ps如何锁定工作区?在Photoshop中,如果用户想要单独对某一块工作区进行操作调整设置的话,可以通过锁定工作区来保证不受干扰,那具体要怎
- sketchbook是我们经常使用的绘画软件,如果有小伙伴想通过这款软件学习画画,第一想到的就是临摹,跟着图片描着画,那要如何在这款软件上实
- 在Office Online模板库中为Office用户免费提供了多种新颖、实用的模板资源,用户可以在Office Online模板库中自由下
- 偶尔,当从网页复制文本到文档时,会发现绿豆颜色的文本阴影。这是因为有些网站为了保护视力,设置了这种颜色的底纹,所以在复制粘贴时会出现这种现象
- AMD Ryzen处理器发售的日子渐渐临近,下面让我们来看看其零售包装。此前,网上偷跑的那批Ryzen处理器采用清一色的黑色喷涂,似乎是剑指
- 我们在使用Excel制作表格整理数据的时候,常常要用到它的函数功能来自动统计处理表格中的数据。下面让小编为你带来excel表格的函数。exc
- 提示: 解决办法:打开运行,输入regedit回车后,打开注册表。 2. 依次展开找到 HKEY_CURREN
- 今年的最新CPU排行榜为广大用户们准备好了,用户们可以在这里查看到各CPU全新的排名和跑分情况等,还有CPU型号发布的时间年限等,想要了解C
- Word剪切板相信大家都非常的熟悉,它主要作用在于,可以存储记忆复制过的内容。比如,现在用Word排版一篇文章,复制了多个词语、句子、段落、
- 一、1、出现这个问题的现象就像图中显示。2、解决问题。打开菜单 文件-选项,选择第二项 显示。3、在右侧看到 空格 选项前已经打钩,点击小勾
- 昨天小编参加公司编辑培训会议,会议上某编辑打开一篇关于如何做好内容的Word文档,用投影仪给大家讲解演示,但是Word文档显示不太清晰,如何
- 很多朋友不清楚word如何批量删除文字中的空格?下面小编给大家带来word批量删除空格技巧,一起来看吧在word中编辑文字,有时,会不知不觉
- 日常工作学习中,PPT可以说是使用最频繁的软件了,在放映自己制作的PPT时,有时会发现某些地方出现了一些错误或者问题,但若此时下方的听众正在
- 看到Windows务管理器中的jqs.exe进程了吗?它的运行起到什么功能?会是病毒吗?下面就了解下jqs.exe是什么进程吧!jqs.ex
- 迅捷CAD看图怎么处理图纸不清晰?用迅捷CAD看图看图纸不清晰,这是图纸的问题吗?对于不同电脑需要调试不同的显示模式,你的软件设置可能要重新
- 在制作表格的过程中,我们可能会用Excel来对数据进行各种运算,如:求和、求差、求积等公式,来完成我们的运算。在前面几课中我们已经基本的讲解
- 当你的那个文件夹里面各种不同文件混杂的时候,正如标题示意的一样让你制定一个目录,Preview就会帮你打开选择好的目录下的所有图片文件了&n
- Windows 7 SP164位旗舰版系统好用的8大理由1、Windows 7非常安全一般而言,新发布Windows操作系统中的安全性都不是
- 在Win7系统的使用过程中,你有没有遇到过这种问题:开机后发现系统启动不了,无法进入桌面,提示LDrvPro64.sys无法验证数字签名。这
- 现如今,无线鼠标已经被普遍使用,不少用户为了能够实现远距离的操作,都会选择无线鼠标。但是,不少用户最近都表示,无线鼠标在使用的过程中,遇到无