处理器间中断
编辑处理器间中断 (IPI),也称为肩抽头,是一种特殊类型的中断,如果中断处理器需要其他处理器的操作,则一个处理器可以通过这种中断中断多处理器系统中的另一个处理器。 可能要求采取的行动包括:
- 当内存映射被一个处理器更改时,刷新其他处理器上的内存管理单元缓存,例如翻译后备缓冲区;
- 当系统被一个处理器关闭时停止。
- 通知处理者有更高优先级的工作可用。
- 将无法在所有处理器上完成的工作通知处理器,例如,
- 对 I/O 通道的非对称访问
- 某些处理器的特殊功能
机制
编辑OS/360 的 M65MP 选项使用 S/360 的直接控制功能在另一个处理器上生成中断; 在 S/370 及其后续版本(包括 z/Architecture)上,SIGNAL PROCESSOR 指令提供了一个更正式的接口。 一些 IBM 操作系统的文档将此称为肩部抽头。
在使用高级可编程中断控制器 (APIC) 的 IBM PC 兼容计算机上,IPI 信号通常使用 APIC 执行。 当一个 CPU 希望向另一个 CPU 发送中断时,它会将中断向量和目标本地 APIC 的标识符存储在自己本地 APIC 的中断命令寄存器 (ICR) 中。 然后通过 APIC 总线将消息发送到目标的本地 APIC,从而向其自己的 CPU 发出相应的中断。
例子
编辑在运行 Microsoft Windows 的多处理器系统中,除了上面列出的原因之外,一个处理器可能会由于以下原因而中断另一个处理器:
IPI 的 IRQL 为 29。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/196149/