硬件如何支持处理器中的中断处理?
operating systemhardwaresoftware & coding更新于 2026/3/6 6:52:17
中断通常被称为信号,当特定事件或进程需要立即处理时,软件或硬件会生成这些信号。因此,信号会通知处理器当前工作进程中存在高优先级且紧急的信息需求,从而导致中断。
因此,每当发生中断时,处理器都会完成当前指令的执行,并开始执行中断,这被称为中断处理。此外,每个中断处理都有一个中断服务例程 (ISR) 或中断处理程序。
现代操作系统中的中断处理 −
在 Linux、mac 或 Windows 等多个操作系统中,中断处理分为两部分 −
一级中断处理程序 (FLIH),也称为硬中断处理程序或快速中断处理程序
二级中断处理程序 (SLIH),也称为慢速中断处理程序或软中断处理程序
FLIH 和 SLIH 的用途和属性 −
FLIH
-
是特定于平台的中断处理
-
它会导致进程执行中的抖动。
-
它还会屏蔽中断
-
FLIH 在Linux
SLIH
-
它完成类似于进程或事件的长中断处理任务。
-
每个单独的处理程序都有专用线程。
-
它具有长执行时间
-
SLIH 在 Linux 中被称为下半部或底半部。
操作系统的中断处理机制接受一个数字(即地址),然后选择要采取的具体操作,该操作已在中断服务例程中提到。在大多数体系结构中,地址存储在称为向量表的表中。
处理器中对中断处理的硬件支持
随着所有最新处理器和技术进步,中断处理被添加到硬件中。
以下段落解释了使用硬件− 的中断处理
-
所有可用的处理器都具有将中断或异常转换为中断处理的机制。
-
不同的处理器提供不同的处理中断的方式。最重要的是使用向量表将中断存储在硬件中断中。
网卡中断处理的用途
网卡及其中断处理的逐步过程如下 −
-
网络设备将数据包存储在设备内存的缓冲区中。
-
网络上引发中断。
-
中断确认并初始化新的套接字缓冲区。
-
处理程序从设备内存复制数据包。
-
处理程序调用一个函数来查找封装数据包的协议。
-
中断处理程序将新数据到达的信息通知网络代码。