双处理器机器如何处理中断?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (47)

我了解双核CPU如何处理中断。我想知道如何在具有多个物理处理器的电路板上执行中断处理。

是否有任何中断责任由物理板配置决定?每个处理器必须能够处理某些类型的中断,例如磁盘I / O。除非有一些电路来管理和派遣中断到适当的处理器?我的猜测是该方案必须是处理器中立的,以便任何处理器和内核都可以运行中断处理程序。

如果内核正在等待磁盘读取,那么在磁盘准备就绪时,该内核是否会运行中断处理程序?

提问于
用户回答回答于

在x86系统上,每个CPU都有自己的本地APIC(高级可编程中断控制器),这些APIC也相互连接,并连接到处理到本地APIC的路由设备中断的I / O APIC。

操作系统可以对APIC进行编程,以确定哪些中断被路由到哪些CPU(或让APIC做出该决定)。

我想象一下,多核CPU对每个核心都会有一个本地APIC,但我对此并不确定。

用户回答回答于

高级可编程中断控制器(APIC)是你如何在现代系统管理这一点。基本上,默认情况下,将全部转到处理器0,除非您有一个操作系统使用此接口来正确设置。另外,不一定需要发出命令的内核等待特定中断。您希望较少加载的内核接收它。

所属标签

可能回答问题的人

  • Hanzo

    6 粉丝0 提问7 回答
  • Richel

    9 粉丝0 提问3 回答
  • mariolu

    31 粉丝0 提问2 回答
  • 上云小秘书

    15 粉丝0 提问2 回答

扫码关注云+社区

领取腾讯云代金券