Interrupt facts for kids
An interrupt is an asynchronous break in program flow that occur as a result of events outside the running program. They are frequently the result of hardware, though they can be the result of a software trap. Frequent sources of interrupts are button presses, timer expiration, completion of a data transfer, or other external events. Interrupt conditions are independent of particular instructions; they can happen at any time. Interrupts trigger execution of instructions that perform work on behalf of the system, but not necessarily the current program. The interrupt request (frequently called the IRQ), is handled by an interrupt handler or interrupt service routine (frequently called the ISR).
Many modern controllers use an interrupt vector to organize interrupts from different sources. The vector generally holds information about what code to run when the interrupt is triggered. ISRs are generally responsible for acknowledging, clearing, and rearming the interrupt, along with servicing the device itself. The CPU/controller must also be accepting interrupts for ISRs to be triggered. There are multiple ways of prioritizing interrupts.
Some common uses of interrupts are:
- Triggering tasks at regular intervals
- Servicing an external device that can happen at any time
- Remove the need for synchronous polling
- Triggering an operating system (OS) to take action
See also
In Spanish: Interrupción para niños