ISR
代表“Interrupt Service Routine”。ISR(也称为中断处理程序)是一种由硬件设备发出的中断请求调用的软件进程。它处理该请求并将其发送到CPU,从而中断当前正在运行的进程。ISR 完成后,该进程会恢复运行。
ISR 的一个基本示例是处理键盘事件的例程,例如按下或释放按键。每次按下按键时,ISR 都会处理输入。例如,如果你在文本文件中按住右箭头键,ISR 会向 CPU 发出信号,表示右箭头键已按下。CPU 会将此信息发送给当前运行的文字处理程序或文本编辑程序,程序随即将光标向右移动。当你松开按键时,ISR 会处理“按键释放”事件。该事件会中断之前的“按键按下”状态,并通知程序停止移动光标。
这类似于牛顿的惯性定律(运动中的物体会保持运动状态):计算机进程会持续运行,除非受到中断。没有中断请求时,计算机将保持当前状态。每个输入信号都会产生一次中断,迫使 CPU 处理相应的事件。
许多类型的硬件设备,包括内部组件和外部外设,都可以向 CPU 发送中断。例如键盘、鼠标、声卡和硬盘。设备驱动程序可以实现这些设备与 CPU 之间的通信。ISR 会根据设备或(端口)的IRQ设置确定中断请求的优先级。通常,键盘位于 IRQ 列表的顶部,而硬盘等设备则排在更靠后的位置。
测试你的知识