外部IO中斷和IPI中斷

2021-06-23 05:06:39 字數 725 閱讀 4530

中斷大概分為兩種(可能不太準確):

一種是外部io中斷,如網路資料報到達後向cpu發起的中斷;

另一種是處理器間中斷ipi,如在smp系統中乙個cpu給另乙個cpu傳送中斷來重新整理tlb。

1.處理器間中斷ipi 

在smp系統中,每個cpu都有乙個lapic,lapc有兩個重要的控制器 apic_icr 和 apic_icr2

apic_icr: 儲存的是中斷向量

apic_icr2:儲存的是傳送中斷請求的目標

當cpu0 要給cpu1傳送ipi中斷時,cpu0只要把中斷向量寫入apic_icr,把中斷請求目標寫入apic_icr2,然後中斷控制器就可以通過匯流排把中斷請求發給cpu1的lapic。這樣cpu1通過lapic就可以收到中斷請求,並查中斷向量表,找到中斷處理函式,處理中斷請求。

2.外部io中斷

網路資料報到達後,網絡卡向ioapic發起中斷請求,ioapic查「中斷重定向表」(interrupt redirection table), 根據這個表的資訊和資料報的資訊,確定目標cpu,ioapic再把這個中斷請求**給目標cpu的lapic。目標cpu通過lapic收到資料報到達的中斷請求,根據中斷向量找到中斷處理函式,處理中斷請求。

二者的區別:

ipi:   源cpu寫icr icr2-->源lapic-->目的lapic-->目標cpu

io中斷: 外設(如網絡卡)-->ioapic-->查詢irt-->目標lapic-->目標cpu

外部中斷與內部中斷

外部中斷與內部中斷 中斷基本概念 什麼是中斷?先打個比方。當乙個經理正處理檔案時,鈴響了 中斷請求 不得不在檔案上做乙個記號 返回位址 暫停工作,去接 中斷 並指示 按第二方案辦 調中斷服務程式 然後,再靜下心來 恢復中斷前狀態 接著處理檔案 計算機科學家觀察了類似例項,外師物化,內得心源 借用了這...

2440外部中斷

一 外部中斷主要暫存器 extintn register address r w description reset value extint0 0x56000088 r w external interrupt control register 0 0x000000 extint1 0x56000...

外部中斷控制

內外部中斷,除了 器中斷和復位中斷不可遮蔽,其餘中斷均可遮蔽,除了不可遮蔽中斷和引導載入中斷ep0i或者lp4i外,所有中斷在系統復位時都是預設被遮蔽的。當1個中斷正在執行服務期間,adsp會在每個週期都對中斷鎖存暫存器ilat中的相應位清0,以禁止該中斷服務程式重複響應。涉及到中斷的主要有以下這幾...