Vectored interrupts


On some systems, especially those that are VME-based, the interrupt response sequence performed by the hardware may look something like this:

 Device: Interrupt request  -->>  CPU                Acknowledgment  <<--  CPU                 Vector number  -->>  CPU 

As a part of the hardware signal sequence, the device will supply a vector number to the CPU. This vector is an ID number associated with the device or card and helps the CPU get to the appropriate service routine quickly. Assuming that each device has a unique ID, the vector number is used as an index into an array of function pointers, and the interrupt recognition hardware in the CPU will actually make a call directly through the vector slot to the appropriate function. This way there's no overhead involved in identifying the device associated with the interrupt request and in locating the correct function to call. It's all done in hardware.

This does lead to interesting problems if more than one device attempts to use the same vector number. Hopefully, this is caught by the system during initialization. The system administrator must be very careful to make sure that conflicts do not arise when adding new hardware.



PANIC. UNIX System Crash Dump Analysis Handbook
PANIC! UNIX System Crash Dump Analysis Handbook (Bk/CD-ROM)
ISBN: 0131493868
EAN: 2147483647
Year: 1994
Pages: 289
Authors: Chris Drake

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net