# Interrupts

In the following posts, we will cover interrupts and exceptions handling in the Linux kernel.

* [Interrupts and Interrupt Handling. Part 1.](interrupts/linux-interrupts-1) - describes interrupts and interrupt handling theory.
* [Interrupts in the Linux Kernel](interrupts/linux-interrupts-2) - describes stuffs related to interrupts and exceptions handling from the early stage.
* [Early interrupt handlers](interrupts/linux-interrupts-3) - describes early interrupt handlers.
* [Interrupt handlers](interrupts/linux-interrupts-4) - describes first non-early interrupt handlers.
* [Implementation of exception handlers](interrupts/linux-interrupts-5) - describes implementation of some exception handlers such as double fault, divide by zero etc.
* [Handling non-maskable interrupts](interrupts/linux-interrupts-6) - describes handling of non-maskable interrupts and remaining interrupt handlers from the architecture-specific part.
* [External hardware interrupts](interrupts/linux-interrupts-7) - describes early initialization of code which is related to handling external hardware interrupts.
* [Non-early initialization of the IRQs](interrupts/linux-interrupts-8) - describes non-early initialization of code which is related to handling external hardware interrupts.
* [Softirq, Tasklets and Workqueues](interrupts/linux-interrupts-9) - describes softirqs, tasklets and workqueues concepts.
* [Last part](interrupts/linux-interrupts-10) - this is the last part of the `Interrupts and Interrupt Handling` chapter and here we will see a real hardware driver and some interrupts related stuff.
