0
Apic用於給處理器提供中斷,所以io設備如何使用它來產生中斷,誰生成向量編號以選擇合適的中斷處理程序,以及如何區分不同的io設備?誰在apic(預先編程的中斷控制器)中生成矢量編號?
Apic用於給處理器提供中斷,所以io設備如何使用它來產生中斷,誰生成向量編號以選擇合適的中斷處理程序,以及如何區分不同的io設備?誰在apic(預先編程的中斷控制器)中生成矢量編號?
當前系統中的I/O設備以兩種方式之一產生中斷:中斷消息或PCI中斷。 PCI中斷向I/O APIC發送信號,該信號將其轉換爲中斷消息。因此無論哪種方式,中斷都作爲中斷消息進入APIC。向量號碼是消息的一部分。 OS將中斷消息編程到I/O APIC或I/O設備中斷消息表中。
APIC不區分I/O設備。中斷消息告訴它向量號和消息應該傳遞到哪個處理器,但不知道消息來自哪個設備。
您可以在軟件開發人員手冊的APIC章節中看到中斷消息格式。
涉及IOMMU,中斷重映射和發佈中斷的複雜性要多得多,我不打算介紹到這裏。
以及如何分配矢量數(以什麼爲基礎)? –