问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

在计算机系统中,请解释什么是中断,请用流程图画出一次中断处理流程

发布网友 发布时间:2022-04-23 19:30

我来回答

2个回答

热心网友 时间:2023-10-03 03:03

中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。

中断流程图如下:

中断过程

按照事件发生的顺序,中断过程包括:

①中断源发出中断请求;

②判断当前处理机是否允许中断和该中断源是否被屏蔽;

③优先权排队;

④处理机执行完当前指令或当前指令无法执行完,则立即停止当前程序,保护断点地址和处理机当前状态,转入相应的中断服务程序;

⑤执行中断服务程序;

⑥恢复被保护的状态,执行“中断返回”指令回到被中断的程序或转入其他程序。

上述过程中前四项操作是由硬件完成的,后两项是由软件完成的。

扩展资料

众所周知,处理器的速度跟外围硬件设备的速度往往不在一个数量级上,因此,如果内核采取让处理器向硬件发出一个请求,然后专门等待回应的办法,显然降低内核效率。

既然硬件的响应这么慢,那么内核就应该在此期间处理其他事务,等到硬件真正完成了请求的操作之后,再回过头来对它进行处理。想要实现这种功能,轮询(polling)可能会是一种解决办法。可以让内核定期对设备的状态进行查询,然后做出相应的处理。

不过这种方法很可能会让那个内核做不少无用功,因为无论硬件设备是正在忙碌着完成任务还是已经大功告成,轮询总会周期性的重复执行。更好的办法是由我们来提供一种机制,让硬件在需要的时候再向内核发出信号(变内核主动为硬件主动),这就是中断机制。

中断使得硬件得以与处理器进行通信。举个例子,在你敲打键盘的时候,键盘控制器(控制键盘的硬件设备)会发送一个中断,通知操作系统有键按下。中断本质是一种特殊的电信号,由硬件设备发向处理器。

处理器接受到中断后,会马上向操作系统反映此信号的到来,然后就由os负责处理这些新到来的数据。硬件设备生成中断的时候并不考虑与处理器的时钟同步——换句话说就是中断随时可以产生。因此,内核随时可能因为新到来的中断而被打断。

不同的设备对应的中断不同,而每个中断都通过一个惟一的数字标识。因此,来自键盘的中断就有别于来自硬盘的中断,从而使得操作系统能够对中断进行区分,并知道哪个硬件设备产生了哪个中断。这样,操作系统才能给不同的中断提供不同的中断处理程序。

在它执行程序的时候,如果有另外的事件发生(比如用户又打开了一个程序)那么这时候就需要由计算机系统的中断机制来处理了。

中断机制包括硬件的中断装置和操作系统的中断处理服务程序。

让硬件在需要的时候再向内核发出信号。

参考资料来源:百度百科-中断机制

参考资料来源:百度百科-中断

热心网友 时间:2023-10-03 03:04

操作系统对中断信号的处理实际是对硬件中断的一种模拟, CPU在INTR引脚上接到一个中断请求信号,如果此时IF=1,CPU就会在当前指令执行完以后开始响应外部的中断请求,这时,CPU在INTA引脚连续发两个负脉冲,外设在接到第二个负脉冲以后,在数据线上发送中断类型码,接到这个中断类型码后,CPU做如下动作: 1)将中断类型码放入暂存器保存; 2)将标志寄存器内容压入堆栈,以保护中断时的状态; 3)将IF和TF标志清0。 目的是防止在中断响应的同时又来别的中断,而将TF清0是为了防止CPU以单步方式执行中断处理子程序。这时要特别提醒,因为CPU在中断响应时自动关闭了IF标志,因此用户如要进行中断嵌套时,必须在自己的中断处理子程序中用开中断指令来重新设置IF; 4)保护断点。 断点指的是在响应中断时,主程序当前指令下面的一条指令的地址。保护断点就是将当前的IP和CS的内容入栈,为了以后正确地返回主程序; 5)根据取到的中断类型码,在中断向量表中找出相应的中断向量,将其装入IP和CS,即呆自动转向中断服务子程序。 对NMI进入的中断请求,由于其类型码固定为2,因此CPU不用从外设读取类型码,也不需计算中断向量表的地址,只要将中断向量表中0000:0008H~0000:000BH单元内容分别装入IP和CS即可。关于<.图3 中断处理过程 > 的几点说明: 1)8086/8088除软件中断外,内部“非屏蔽中断”、“可屏蔽中断”均设立有优先级,其中内中(除单步外)――即0、1、3、4号中断的优先级高于非屏蔽中断,非屏蔽中断高于可屏蔽中断,单步中断优先级最低; 2)只有在可屏蔽中断的情况下才判IF=1?,才取中断类型码,其余的没有这个动作。 3)关于单步中断,它是每执行一条指令中断一次,显示出当时各寄存器的内容,供用户参考,当进入单步中断响应时,CPU自动清除了TF,在中断返回后,由于恢复了响应时的标志寄存器的值,因此TF=1,执行完一条指令后又进入单步中断,直到程序将TF改为0为止。 4)关于中断的嵌套,NMI总是可以响应的,若在中断处理子程序中设立了开中断指令,INTR的请求也能响应。 5)弹出IP、CS、标志,返回断点的动作由IRET指令完成。6)当遇到等待指令或串操作指令时,允许在指令执行的过程中进入中断。这时需注意在中断处理子程序中保护现场,以保证中断返回后能继续正确地执行这些指令。扯了那么多8086的东西, 该说说正题了。操作系统在从内核态返回用户态之前(系统可能是一个系统调用, 也可能是一个时钟中断而导致进入内核模式), 将检查是否有需要的投递的信号。一旦检测到需要信号投递时, 内核将改变用户空间的数据(跟调用exec类似, 系统会改变用户空间的数据)。建立一个新的栈桢。当返回到用户空间的时候, IP指向的将是新的栈, 所以执行的下一个指令将是信号处理函数(signal_handler)。当信号出来函数返回时, 执行的将是sigreturn, 所以系统将重新进入内核模式。这个时候系统将把栈清除。恢复原来的IP值, 当重新再次返回用户模式的时候, 程序就像什么都没有发生一样继续往下执行。因为上下文是保存在用户空间, 并且是以链的形式保存, 所以信号出来的递归是没有问题的。信号处理函数sigreturn返回一次将执行一次类似弹栈操作, 直到栈为空为止。对于系统调用的自动重启, 只要把IP恢复为执行前一条指令, 那么系统调用自然自动被再次调用。不过由于带有超时参数的函数在执行signal_handler的时候会费掉时间, 再次进入系统调用将造成不必要的麻烦(两义性), 所以对于这类函数是不会自动重启的。 1 回答者: 15801485131
在计算机系统中,请解释什么是中断,请用流程图画出一次中断处理流程

中断是指计算机运行过程中,出现某些意外情况需主机干预时,机器能自动停止正在运行的程序并转入处理新情况的程序,处理完毕后又返回原被暂停的程序继续运行。中断流程图如下:中断过程 按照事件发生的顺序,中断过程包括:①中断源发出中断请求;②判断当前处理机是否允许中断和该中断源是否被屏蔽;③优先权排队...

从键盘输入a,b,c 从小到大一次输出。请画出流程图,并写出程序

System.out.print("请输入a,b,c的值:");Scanner keyIn=new Scanner(System.in);a=keyIn.nextLong();b=keyIn.nextLong();c=keyIn.nextLong(); // 输入值给 a,b,c if(a&gt;b){a=a^b^a;b=a^b^b;}//交换a,b值,保持ac){b=b^c^b;c=b^c^c;}//交换b,c值,保持b&lt;c Syst...

绘出应急故障处理流程图

除了涉及专业各个方面的笔试,最见功底的则是口试语言表达能力,以及专业熟悉程度,现场问题都是随机抽出,航天员不仅要详尽而准确地回答,还要熟练地画出流程图作讲解。而正常飞行程序和应急故障程序的操作考核,是在模拟器上进行的。应急故障程序是最富有挑战性的,因为设置完全是随机的,且必须限制在一个...

计算机接口技术综合题,题目如下,请各位大虾江湖救急救急!!!

答:(1)中断请求寄存器(IRR)=10H;说明IR4有中断请求(2)中断屏蔽寄存器(IMR)=10H;说明屏蔽了IR4的中断请求(3)中断服务寄存器(ISR)=10H;说明IR4的中断请求正在被服务4.比较中断方式与DMA方式的主要异同,并指出它们各自应用在什么性质的场合。答:相同点:这两种方式下,主机和I/O设备都是并行工作。 不同点:中断...

1. 外设在计算机中的作用 2. 外设在计算机中有哪些工作方式 3. 主机...

1.外部设备简称“外设”,是指连在计算机主机以外的硬件设备。对数据和信息起着传输、转送和存储的作用,是计算机系统中的重要组成部分。由于外部设备种类繁多,有的设备兼有多种功能,到目前为止,很难对外部设备作出准确的分类。按照功能的不同,大致可以分为输入设备、显示设备、打印设备、外部存储器和...

电脑有时打开主机后,黑屏是怎么回事?

而下面介绍的正是这些保护计算机中秘密的一些方法。 1、彻底地一次删除文件 首先,应从系统中清除那些你认为已肯定不用的文件,这里我们指的是你丢弃到回收站中的所有垃圾文件。当然,你可以在任何想起的时候把回收站清空,但更好的方法是关闭回收站的回收功能。要彻底地一次删除文件,可右击“回收站”图标,选择“属性...

电脑蓝屏出现:oxffffffff(oxffffffff ox7ff99700 ox00000000 oxebdbe580...

(2)有问题的设备驱动、系统服务或内存冲突和中断冲突: 如果在蓝屏信息中出现了驱动程序的名字, 请试着在安装模式或者故障恢复控制台中禁用或删除驱动程序, 并禁用所有刚安装的驱动和软件. 如果错误出现在系统启动过程中, 请进入安全模式, 将蓝屏信息中所标明的文件重命名或者删除. (3)如果错误信息中明确指出Win32K...

2、PLC由哪几部分组成?

1、中央处理单元 中央处理单元(CPU)是PLC控制器的控制中枢。它按照PLC控制器系统程序赋予的功能接收并存储从编程器键入的用户程序和数据;检查电源、存储器、I/O以及警戒定时器的状态,并能诊断用户程序中的语法错误。2、存储器 存放系统软件的存储器称为系统程序存储器。存放应用软件的存储器称为用户程序...

系统出现蓝屏...急,,,请进

在计算机的使用过程中,经常会遇到蓝屏的情况。造成计算机蓝屏的原因有很多种,总体可以概括为以下几种: 一、屏幕显示系统忙,请按任意键继续…… 1、虚拟内存不足造成系统多任务运算错误 虚拟内存是Windows系统所特有的一种解决系统资源不足的方法,其一般要求主引导区的硬盘剩余空间是其物理内存的2-3倍。而一些发烧友...

有一次我的电脑死机我强行关机了,但以后的每一次开机都会检查盘,这是怎...

由于Windows 9x启动需要有Command.com、Io.sys、Msdos.sys等文件,如果这些文件遭破坏或被误删除,即使在CMOS中各种硬件设置正确无误也无济于事。解决方法:使用同版本操作系统的启动盘启动计算机,然后键入“SYS C:”,重新传送系统文件即可。 【初始化文件遭破坏】 由于Windows 9x启动需要读取System.ini、Win.ini和...

请画出计算机系统组成图 计算机中什么是开中断 请写出计算机系统的组成图 请分析数据在计算机系统中的重要性 请简述计算机系统的基本工作流程 计算机中断处理过程 计算机系统设计中断的目的 请详细写出计算机系统的组成部分 请写出3个计算机的系统软件
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...但现在没在那里上班了…我想取消我的工号怎样做? 不在电信上班取消工号 成语独木难支是什么意思我不知道什么意思 回天之力的反义词 帧数测试用什么软 25岁买重疾险需要体检吗 25岁优先买哪一款重疾险? 25岁买重疾险应该怎么选 ...家养的小兔子抓轻伤,末出血,有没有必要打狂犬疫苗?请专家权威解答... 兵法中略如火,不动如山 51单片机中什么是中断?其作用是什么?怎么用?用自己的理解回答把 51单片机中什么是中断?其作用是什么?怎么用? 采用中断技术的目的之一是( )。 中断是什么意思? 什么叫中断?中断有什么特点? QQ空间很重要的说说不小心被删掉了,还可以还原吗,怎么还原??? 别人送了台外星人笔记本,但是系统内没有改键盘色的软件,应该是重装了win10的系统,怎么重新下载 Alienware M15x 键盘灯怎么换颜色 能吃火龙果吗 火龙果非常有营养,吃火龙果有禁忌吗? 慢性胃炎、十二指肠溃疡能吃南瓜吗?求答案 入伏吃什么水果最适宜 吃火龙果有什么好处和坏处,什么样的人不能吃? 芒果,火龙果,凤梨 吃火龙果有哪些好处?火龙果不能和什么一起吃? 饥荒手机版家园怎么建造 饥荒手机版家园建造指南 小仓鼠,能不能吃火龙果 饥荒联机版多汁浆果是哪个mod? 反胃酸过多能吃南瓜小米红枣粥吗? 饥荒收割稻草收出壁虎怎么办 单片机的中断跟延时有什么不同? 采用中断技术的目的之一是( )A. 提高CPU运算速度 B. 提高存储器工作速 设中断优先级的目的是什么 PLC中的中断有什么意义 为什么要进行中断断点保护?断点保护所包含主要内容有哪些? 什么叫矢量中断?请叙述中断类型号、中断向量表和中断服务程序入口地址三者的关系? 单片机设置中断程序初始化的目的? 单片机高手进来有分 指出下列程序中,使用外部中断几?程序的目的是什么? 单片机。求一段汇编程序。P3.2口为中断。按一下进入中断,再按一下退出中断。谢谢啦 铸铁和钢的区别 铸铁和钢分别有什么特点,区别又是什么? 铸铁与钢有何区别? 铸钢和铸铁的区别是什么? 低碳钢和铸铁的区别 碳素钢和铸铁的区别? 铸钢和铸铁在成分上和性质上与其他普通钢铁有什么区别? 铸钢和铸铁有什么区别,性能上有何差异? 怎样区分生铁和钢? 我的电脑内存条可以8g和4g可以一起装吗 安卓手机怎么下载足迹软件