NVIDIA Interview Question
Software Engineer / Developersx86 intepretation
1 - interrupt occurs (from PCI, keyboard controller, whatever...)
2 - save current context (unless interupt is masked, then do nothing end of story)
3.- Lookup address in interrupt descriptor table, jump to it.
4 - do stuff...
5 - Clear interrupt (maybe a legacy thing)
6 - return
1-- ISRs are the functions that the kernel runs in response to a specific interrupt.
2-- Each device that generates an interrupt has an associated ISR which is the part of the device driver.
3--Basically the object of the struct irq_action { } maintains the ISR provided by the device driver.
An interrupt handler, also known as an interrupt service routine (ISR), is a callback subroutine in an operating system or device driver whose execution is triggered by the reception of an interrupt
- vaibhav garg March 14, 2011Step in executing an Interrupt:
1) It finish the instruction it is executing and saves the address of the next instruction (PC) on the stack.
2) It also saves the current status of all the interrupt internally.
3) It Jumps to a fixed location in memory called the interrupt vector table that holds the address of the interrupt service routine.
4) The microcontroller gets the address of the ISR from the interrupt vector and jumps to it. It starts to execute the interrupt service subroutine until it reaches the last instruction of the subroutine.
5) Upon executing the RETI instruction ,the microcontroller returns to the Place where it was interrupt.