处理器硬件如何支持中断处理?


中断通常被称为信号,当某个事件或进程需要立即处理时,由软件或硬件生成。因此,该信号通知处理器关于高优先级和紧急信息需求,导致当前工作进程中断。

因此,每当发生中断时,处理器都会完成当前指令的执行并开始执行称为中断处理的中断。此外,对于每次发生的中断处理,都有一个中断服务例程 (ISR) 或中断处理程序。

现代操作系统中的中断处理 -

在 Linux、macOS 或 Windows 等多个操作系统中,中断处理分为两部分 -

一级中断处理程序 (FLIH),也称为硬中断处理程序或快速中断处理程序

二级中断处理程序 (SLIH),也称为慢速中断处理程序或软中断处理程序

FLIH 和 SLIH 的用途和特性如下 -

FLIH

  • 是特定于平台的中断处理。

  • 它会导致进程执行中的抖动。

  • 它还会屏蔽中断。

  • FLIH 在 Linux 中被称为上半部分。

SLIH

  • 它完成类似于进程或事件的长时间中断处理任务。

  • 每个单个处理程序都有一个专用的线程。

  • 它具有较长的执行时间。

  • SLIH 在 Linux 中被称为下半部分或底部。

操作系统的中断处理机制接受一个作为地址的数字,然后选择要采取的特定操作,该操作已在中断服务例程中提到。在大多数架构中,地址存储在称为向量表的表中。

处理器中中断处理的硬件支持

随着所有最新的处理器和技术进步,中断处理已添加到硬件中。

以下段落解释了使用硬件进行中断处理 -

  • 所有可用的处理器都具有将中断或异常转换为中断处理的机制。

  • 不同的处理器提供不同的中断处理方式。最重要的一种是使用向量表存储硬件中断中的中断。

网卡中断处理的用途

网卡及其中断处理的逐步过程如下 -

  • 网络设备将数据包存储在设备内存中的缓冲区中。

  • 在网络上引发中断。

  • 中断确认并初始化新的套接字缓冲区。

  • 处理程序从设备内存复制数据包。

  • 处理程序调用一个函数来查找数据包封装的协议。

  • 中断处理程序通知网络代码有关新数据到达的信息。

更新于:2021年12月1日

518 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告