Could you please let me know how the hardware/driver raises an interrupt? and in an SMP, which CPU gets interrupted?
If IRQ is shared by multiple devices, how the kernel identifies the which device caused the interrupt.
/Ganesh
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Traditionally there is an actual interrupt wire that runs from the device to the interrupt controller, when it is high (or low, or on an edge) an interrupt is generated and the CPU starts executing the interrupt handler.
On modern systems interrupts tend to be messages on a bus which are sent to the interrupt controller (or there may be several).
In terms of more detail you’ll need to be more specific, the details vary depending on what sort of hardware you’re talking about.