中断
中断是发送到处理器的信号,用于中断当前的进程。它可以由硬件设备或软件程序生成。
硬件中断通常由输入设备创建,例如鼠标或键盘。例如,如果你正在使用文字处理器并按下一个键,程序必须立即处理输入。输入“hello”会创建五个中断请求,从而使程序能够显示你输入的字母。同样,每次你点击鼠标按钮或在触摸屏上轻触时,都会向设备发送一个中断信号。
中断会以中断请求或(IRQ)的形式发送到处理器。每个输入设备都有唯一的 IRQ 设置或优先级。这可以防止冲突,并确保键盘和鼠标等常用输入设备得到优先处理。
软件中断用于处理程序运行期间发生的错误和异常。例如,如果程序预期某个变量是有效数字,但该值为null,则可能生成中断,以防止程序崩溃。这样,程序就能改变执行方向,在继续运行之前处理错误。同样,中断也可用于中断无限循环,因为无限循环可能造成内存泄漏或导致程序无响应。
硬件中断和软件中断都由中断处理程序处理,也称为中断服务例程或(ISR)。当程序收到中断请求时,ISR 会处理该事件,然后程序恢复运行。由于中断通常和一次按键或鼠标点击一样短暂,因此通常会在不到一毫秒的时间内处理完毕。
测试你的知识