A computer represents a series of
interconnected hardware
components, all often competing for
the same resources and working at
a speed of millions of instructions
per second. Under these conditions,
certain errors occur; components
can issue interrupts to signal the
computer to hand over control of
the system or a part of the system.
In these cases, the function of an
interrupt service routine or
subroutine becomes essential.
However, while an ISR may appear
to be a simple subroutine, there are
slight yet important differences.
Interrupt Service Routine
In computer programming
terminology, a "routine" represents
a specific piece of code or algorithm
invoked for a specific purpose. In
the case of system interrupts, the
computer invokes an Interrupt
Service Routine. The ISR handles an
interrupt by checking the status of
the interrupt, determining why the
interrupt occurred and what action
needs to be taken. Although the ISR
usually will not handle the
interrupt itself, it is the "first on
the scene," so to speak, and
prepares the system for interrupt
handling.