Interrupt
Origin
Middle English, from Latin interruptus, past participle of interrumpere, from inter- + rumpere to break
Definitions
- 1: to stop or hinder by breaking in <interrupted the speaker with frequent questions>
- 2: to break the uniformity or continuity of <a hot spell occasionally interrupted by a period of cool weather>
- intransitive verb
- 1: to break in upon an action; especially : to break in with questions or remarks while another is speaking
Description
In computing, an interrupt is an asynchronous signal indicating the need for attention or a synchronous event in software indicating the need for a change in execution.
A hardware interrupt causes the processor to save its state of execution and begin execution of an interrupt handler. Software interrupts are usually implemented as instructions in the instruction set, which cause a context switch to an interrupt handler similar to a hardware interrupt.
Interrupts are a commonly used technique for computer multitasking, especially in real-time computing. Such a system is said to be interrupt-driven.
An act of interrupting is referred to as an interrupt request (IRQ).
Typical uses
Typical uses of interrupts include the following: system timers, disks I/O, power-off signals, and traps. Other interrupts exist to transfer data bytes using UARTs or Ethernet; sense key-presses; control motors; or anything else the equipment must do.
A classic system timer generates interrupts periodically from a counter or the power-line. The interrupt handler counts the interrupts to keep time. The timer interrupt may also be used by the OS's task scheduler to reschedule the priorities of running processes. Counters are popular, but some older computers used the power line frequency instead, because power companies in most Western countries control the power-line frequency with a very accurate atomic clock.
A disk interrupt signals the completion of a data transfer from or to the disk peripheral. A process waiting to read or write a file starts up again.
A power-off interrupt predicts or requests a loss of power. It allows the computer equipment to perform an orderly shut-down.
Interrupts are also used in typeahead features for buffering events like keystrokes.