中断服务例程简介

接收中断的物理设备的驱动程序会注册一个或多个中断服务例程, (ISR) 为中断提供服务。 系统每次收到该中断时都会调用 ISR。

PCI 2.2 之前的端口和总线设备会生成 基于线路的中断。 设备通过在称为中断线的专用引脚上发送电信号来生成 中断。 Windows Vista 之前的 Microsoft Windows 版本仅支持基于行的中断。

从 PCI 2.2 开始,PCI 设备可以生成 消息信号中断。 设备通过将数据值写入特定地址来生成消息信号中断。 Windows Vista 和更高版本的操作系统同时支持基于线路的中断和消息信号中断。

系统支持两种不同类型的 ISR:

  • 驱动程序可以注册一个 InterruptService 例程来处理基于线路的中断或消息信号中断。 (这是 Windows Vista 之前唯一可用的类型。) 系统传递驱动程序提供的上下文值。

  • 驱动程序可以注册 InterruptMessageService 例程来处理消息信号中断。 系统传递驱动程序提供的上下文值和中断消息的消息 ID。

有关注册 InterruptService 或 InterruptMessageService 例程来为设备的中断提供服务的详细信息,请参阅 Message-Signaled中断简介