Various embodiments of the present invention are directed to augmented
interrupt controllers (AICs) and to synthetic interrupt sources (SISs)
providing richer interrupt information (or "synthetic interrupts" or
"SIs"). The AIC and SIS provide efficient means for sending and receiving
interrupts, and particularly interrupts sent to and received by virtual
machines. Several of these embodiments are specifically directed to an
interrupt controller that is extended to accept and deliver additional
information associated with an incoming interrupt. For certain such
embodiments, a memory-mapped extension to the interrupt controller
includes a data structure that is populated with the additional
information as part of the interrupt delivery. Although several of the
embodiments described herein are disclosed in the context of a virtual
machine system, the inventions disclosed herein can also be applied to
traditional computer systems (without a virtualization layer) as well.