欢迎来到亿配芯城! | 免费注册
你的位置:GOKE(国科微)处理器IC芯片全系列-亿配芯城 > 芯片资讯 > 中断是什么意思-电子发烧友网
中断是什么意思-电子发烧友网
发布日期:2024-01-18 07:57     点击次数:153

中断是什么?

中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的中断服务程序(Interrupt Service Routine,ISR)。这个事件可以是由硬件设备触发(如硬盘读写错误、打印机没有纸等),也可以是由软件触发(如用户按下Ctrl+C)。

当发生中断时,CPU会暂停当前正在执行的程序,并跳转到相应的中断处理程序(Interrupt Service Routine,ISR)去处理这个事件。中断处理程序通常会保存当前任务的上下文信息(如CPU寄存器的状态、内存中的数据等),然后执行相应的中断处理操作(如读取数据、发送响应等)。在中断处理完毕后,CPU会恢复之前保存的上下文信息,并回到被中断的任务继续执行。

中断是一种异步的事件处理机制,可以提高系统的并发处理能力。在现代计算机系统中,中断被广泛应用于处理各种硬件设备事件和软件异常情况。

我们知道中断的发生与处理是一个需要软硬件交互的操作。

图片

•关中断:进入不可响应中断请求的中断,由硬件自动完成

•保存断点:把当前的程序计数器PC中的内容保存起来,用于中断处理结束后能继续执行主程序

•识别中断源:有多个中断源同时请求时,只能响应最高优先级的,GOKE(国科微)处理器IC芯片 因此需进一步判断中断源

•保存现场和屏蔽字:进入中断服务程序后,要先保存现场

•设置新的屏蔽字:用于改变中断优先级和控制中断的产生

•开中断:执行中断程序时,打开中断可实现更高优先级的中断响应,实现中断嵌套

•执行中断服务程序:执行中断服务程序中的内容

•再次关中断:使得恢复现场和屏蔽字时不会被中断打断

•恢复现场和屏蔽字:使现场和屏蔽字恢复到中断之前的状态

•再次开中断:中断执行完,现场恢复完后,可以打开中断

•中断返回:返回原程序继续执行

处理过程,会经历两次的开/关中断,也可用下图描述

图片

在之前我们在做嵌入式的时候,大多是关注了软件层面,如何注册中断,如何设计中断的参数,如何编写中断服务函数,如何将中断服务绑定到中断号。做linux中断的话,这些都是定义好的,你可以去调用接口,当然也支持自定义添加新的中断。