IRQ descriptor table

Another important abstraction is with respect to IRQ numbers associated with hardware interrupts. Interrupt controllers identify each IRQ source with a unique hardware IRQ number. The kernel's generic interrupt-management layer maps each hardware IRQ to a unique identifier called Linux IRQ; these numbers abstract hardware IRQs, thereby ensuring portability of kernel code. All of the peripheral device drivers are programmed to use the Linux IRQ number to bind or register their interrupt handlers.

Linux IRQs are represented by IRQ descriptor structure, which is defined by struct irq_desc; for each IRQ source, an instance of this structure is enumerated during early kernel boot. A list of IRQ descriptors is maintained in ...

Get Mastering Linux Kernel Development now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.