Until kernel 2.4, the only commonality in the implementation of interrupts on the diverse platforms supported by the Linux kernel used to be that they exist at all — but that's where the similarity came to an end. Lots of code (and lots of duplicated functionality) was spread across architecture-specific components. The situation was improved considerably during the development of kernel 2.6 because a generic framework for interrupts and IRQs was introduced. Individual platforms are now only responsible to interact with the hardware on the lowest levels. Everything else is provided by generic code.
Let's start our discussion by introducing the most common types of system interrupts as our starting point before focusing on how they function, what they do, and what problems they cause.
Continue reading here: Interrupt Types
Was this article helpful?