これを共有できてうれしいです。
なぜなら、私はPowerPC、MIPSコアを搭載した組み込みデバイスで作業しているだけなので、x86については説明しません。申し訳ありません。
割り込み信号は、一般に、モジュールコントローラ、例えば、SDコントローラ、UARTコントローラ、SPIコントローラなどによってトリガーされる。
ご存知のように、信号はそのデバイスでイベントが発生していることを示しており、CPUの注意が必要です。
チップ上には、一般的に割り込み処理モジュールがあり、そこにある種のコントローラからの割り込み信号が送信されます。
通常、割り込み処理モジュールには複数の信号ピンがありますが、通常は、そのモジュールからCPUコアへのピンは1つだけです。
割り込み信号ピンが1つのデバイス、たとえば1つのコントローラだけで使用されている場合、割り込みは共有されていないと言えます。共有割り込みを参照する理由は、その処理フローが非共有割り込みと同じではないためです。
割り込みが1つ存在し、コアに送信された場合でも、それを処理するソフトウェアがない場合は処理されません。
したがって、システムのブートストラップまたは初期化中に、通常、各モジュール、主にデバイスモジュールにコードのブロックがあり、request_irq()の呼び出しなどのirqの初期化を担当します。
request_irq()が正確に行うことは、ソフトウェアを何らかの割り込み信号にアタッチすることです。このようにして、ハードウェア割り込み信号とソフトウェアISRの関係が設定されます。
request_irq()を呼び出すことにより、システムはそのイベントを処理したい人がいることを通知され、そのイベントが発生した場合、システムはirqを使用してrequest_irq()に渡される関数を呼び出すことによってその人に知らせます番号。
ちなみに、「割り込みのアドレスがあります」と言うと、よくわかりません。詳細を教えてください。