处理器间中断

处理器间中断(英語:Inter-Processor Interrupt,IPI)是一种特殊类型的中斷,即在多处理器系统中,如果中断处理器需要来自其它处理器的动作,一个处理器向另一个处理器发出的中断行为。可能要求采取的行动包括:

机制

OS/360M65MP选件使用S/360的直接控制功能生成另一个处理器上的中断;在S/370及其后继者,包括z/Architecture上,SIGNAL PROCESSOR指令提供了一个更正式的接口。

在使用高级可编程中断控制器(APIC)的IBM PC兼容机上,常借助APIC发出IPI信号。当CPU希望向另一个CPU发送中断时,它会将中断向量和目标的本地APIC标识符存储在自己的本地APIC中断命令寄存器(ICR)中。消息随后经由APIC总线发送到目标的本地APIC,它因此发出一个相应的中断至它自己的CPU。

示例

在运行Microsoft Windows的多处理器系统中,除了上面列出的,处理器还可以出于下列原因中断另一个处理器:

  1. 排队轮候DISPATCH_LEVEL中断,以调度执行特定线程;
  2. 内核调试器断点。

IPI的IRQL为29。[1]

参见

参考

  1. ^ Matt. Understanding IRQL. 2002-04-28 [2014-12-06]. (原始内容存档于2019-10-14). 

外部链接