Skip to main content

Posts

Showing posts from January 7, 2004
Notes Ch4 Understanding the Linux Kernel There is a key difference between interrupt handling and process switching: the code executed by an interrupt or by an exception handler is not a process. Rather, it is a kernel control path that runs on behalf of the same process that was running when the interrupt occurred . As a kernel control path, the interrupt handler is lighter than a process (it has less context and requires less time to set up or tear down). The activities that the kernel needs to perform in response to an interrupt are thus divided into two parts: a top half that the kernel executes right away and a bottom half that is left for later. Interrupt Types: Maskable interrupts : Sent to the INTR pin of the microprocessor. They can be disabled by clearing the IF flag of the eflags register. All IRQs issued by I/O devices give rise to maskable interrupts. Nonmaskable interrupts : Sent to the NMI (Nonmaskable Interrupts) pin of the microprocessor. They are not