ARM Linux中斷機制之中斷的初始化

2021-06-19 19:22:39 字數 509 閱讀 9474

一,認識幾個重要結構體:

1.中斷描述符

對於每一條中斷線都由乙個

irq_desc結構來描述。

//在include/linux/irq.h中

struct irq_desc ____cacheline_internodealigned_in_smp;

2. 中斷硬體操作函式集

//在include/linux/irq.h中定義

//該結構體中各函式在檔案linux/arch/arm/plat-s3c24xx/irq.c中實現

struct irq_chip ;

3.中斷處理例程描述符

//在include/linux/interrupt.h中

struct irqaction ;

這三個結構體間的關係表示如下

**至微博

ARM Linux 中斷分析

在具體的 arm 晶元中會有很多的中斷型別,每一種型別的中斷用以上結構來表示 struct irqdesc irq desc nr irqs nr irqs 根據不同的 mcu 會有所區別 在通過request irq 函式註冊中斷服務程式的時候,將會把中斷向量和中斷服務程式對應起來。我們來看一下 ...

arm linux 中斷分析2

裝置一般都比cpu慢得多。因此一般情況下,當乙個程序通過裝置驅動程式向裝置發出讀寫請求後,cpu並不等待i o操作的完成,而是讓正在執行的程序去睡眠,cpu自己做別的事情,例如喚醒另乙個程序執行。當裝置完成i o操作需要通知cpu時,會向cpu發出乙個中斷請求 然後cpu根據中斷請求來決定呼叫相應的...

linux中斷系列之中斷簡介 一

第六章 第一節 中斷簡介 核心主要職責 管理系統中存在的各種裝置,一般以一下兩種方式管理 1 輪詢 核心一定週期訪問裝置,查詢裝置狀態並進行處理,裝置請求不能及時處理,大量消耗cpu資源。2 中斷 裝置在需要時通知核心,核心收到裝置的請求後在做出相應處理,即產生一種電訊號,通過中斷控制器發給cpu,...