1. 基本概念
中断是处理器中的一种机制,用于响应和处理突发事件或紧急事件。当发生中断时,当前正在执行的程序会被暂时中止,处理器会跳转到中断处理程序中(也称为中断服务例程),对中断事件进行处理。处理完毕后,CPU再返回到被之前中断的程序继续执行。
在《ARM Cortex-M3与Cortex-M4权威指南》这本书中如下介绍:
异常和中断的效果基本一致,都是暂停当前任务,优先执行紧急事件。因此一般将中断和异常统称为中断。
中断可以看作是一种突然的打断,类似于我们在做一件事情的时候突然收到了一个电话,需要立即停下手头的工作去接听电话。中断可以分为硬件中断和软件中断两种类型。
硬件中断是由外部设备触发的,如按键按下。当外部设备触发了中断信号时,CPU会立即停止当前的任务,转而执行与中断相关的处理程序。处理完中断后,CPU会返回到之前被中断的地方继续执行。
软件中断是由程序中的特殊指令触发的。程序可以通过软件中断指令,主动请求CPU中断当前任务,执行与中断相关的处理程序。软件中断可以用来实现特定的功能,如操作系统的系统调用。