Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
当多个注册的中断服务程序共享一条 IRQ 线时,什么决定了中断线被提升时 ISR 的执行顺序?
无论如何,顺序是不可预测的,因为正如您所说,中断线是共享的。因此,系统中有(或可能有)其他设备驱动程序在与您的 ISR 共享的同一中断线上注册 ISR。因此,您不能假设调用 ISR 的顺序!
现在,当中断线出现时,内核会逐一调用为该线注册的所有 ISR,直到某个 ISR 返回“CLAIMED”。
ISR 获取代表设备的软上下文,并由 ISR 检查该设备是否是中断源。如果是,则 ISR 返回 CLAIMED,否则返回 NOT CLAIMED。