Patent ID: 7581051
Filing Date: 2009-08-25
Classification: G06F

Abstract:
1. A device-independent computer-implemented method of handling interrupts, comprising: registering a device driver with an operating system, wherein the device driver runs in user mode; providing a device-independent interrupt service as a kernel service, said device-independent interrupt service exposing an interface that is called by said driver to enable an interrupt; masking the interrupt in a device-independent way at a processor; receiving via the interface a call from the device driver, the call causing an interrupt line to be parked with the device-independent interrupt service; unmasking the interrupt; receiving the interrupt; invoking a generic kernel mode interrupt service routine upon receipt of said interrupt and subsequent to invoking interrupt service routines for kernel mode drivers sharing the interrupt line; running the generic kernel mode interrupt service routine, said generic kernel mode interrupt service routine remasking the interrupt at a level lower than said processor, and scheduling at user mode to call said device driver to handle the interrupt; handling said interrupt by said device driver; and enabling the interrupt line to receive another interrupt.