An event subscription and publication system for dynamically notifying user level
applications of kernel level events. The kernel level events may include hardware
and software events as well as system level errors that occur in the kernel. User
level applications that need information on these kernel level events subscribe
to the event monitoring and publication framework of the present invention and
are notified of these kernel level events when they occur. Upon notification of
an event, the user application also is provided with specific information classifying
the nature and details of the event. The kernel event monitoring and publication
system of the present invention allows user level applications to be dynamically
notified of kernel level events without requiring the user level application to
interrupt the normal processing states to identify these events when the events occur.