簡體   English   中英

雙處理器機器如何處理中斷?

[英]How are interrupts handled by dual processor machines?

我知道雙核CPU如何處理中斷。 我想知道如何在具有多個物理處理器的電路板上實現中斷處理。

是否有任何中斷責任由物理板的配置決定? 每個處理器必須能夠處理某些類型的中斷,如磁盤I / O. 除非有一些電路來管理和分配適當的處理器中斷? 我的猜測是該方案必須是處理器中立的,因此任何處理器和內核都可以運行中斷處理程序。

如果核心正在等待磁盤讀取,那么當磁盤准備就緒時,該核心是否會運行中斷處理程序?

在x86系統上,每個CPU都有自己的本地APIC(高級可編程中斷控制器),它們也相互連接,並連接到處理到本地APIC的路由設備中斷的I / O APIC。

操作系統可以對APIC進行編程,以確定哪些中斷被路由到哪些CPU(或讓APIC做出決定)。

我想多核CPU會為每個核心配備一個本地APIC,但老實說我不確定。

有關詳細信息,請參閱以下鏈接

您感興趣的是SMP Processor Affinity。 是一篇關於如何在Linux中處理它的優秀文章。 高級可編程中斷控制器(APIC)是您在現代系統中管理它的方式。 基本上,除非您有一個使用此接口正確設置的操作系統,否則默認情況下將全部轉到處理器0。 此外,您不一定希望發出命令的核心等待特定中斷。 您希望負載較少的核心接收它。

我已經回答過這個問題了。 也許它可以為你提供一些見解:)

多核/多浦機器中的中斷如何工作

我會說這將取決於硬件制造商......

然而, 這個鏈接讓我相信大部分都可能由主處理器和/或第一核處理。

另一個環節

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM