1
這是我的問題。手冊說:「當內核收到中斷時,所有註冊的處理程序都會被調用。」我想知道是否有任何規則,指定處理程序將被調用的順序?在linux中的中斷處理。中斷共享
這是我的問題。手冊說:「當內核收到中斷時,所有註冊的處理程序都會被調用。」我想知道是否有任何規則,指定處理程序將被調用的順序?在linux中的中斷處理。中斷共享
內核函數request_irq
調用setup_irq
(在kernel/irq/manage.c
中)。它們按照與IRQ相關的順序鏈接。也就是說,每個ISR都添加到列表的末尾。
非常感謝,@ wallyk。 – Roman
現在我已經得到另一個問題了。是否有可能使系統首先調用我的haninder而不是調用默認值。 (例如我的處理程序工作,比它只是不清除中斷位,所以使系統調用下一個默認)?也許我可以改變你告訴我的鏈中處理程序的順序。 – Roman
@Farrel:如果你的代碼可以訪問內核結構,你可以重新排序鏈。但爲什麼?激活ISR的延遲取決於許多系統因素,而不僅僅是鏈條的順序。 – wallyk