Browse Prior Art Database

Fast Interrupt Handling and Reflection for Performance Sensitive Functions

IP.com Disclosure Number: IPCOM000113809D
Original Publication Date: 1994-Oct-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 46K

Publishing Venue

IBM

Related People

Howard, JS: AUTHOR

Abstract

A considerable performance gain can be realized if a generic interrupt handler is taught about specific interrupt types and made to do interrupt-specific processing that is usually left to the interrupt-specific interrupt processors if a flag is set to indicate a specific interrupt type is pending and if a process is marked as interrupt-pending from a different process that would normally have to switch to the to-be-posted process.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 76% of the total text.

Fast Interrupt Handling and Reflection for Performance Sensitive
Functions

      A considerable performance gain can be realized if a generic
interrupt handler is taught about specific interrupt types and made
to do interrupt-specific processing that is usually left to the
interrupt-specific interrupt processors if a flag is set to indicate
a specific interrupt type is pending and if a process is marked as
interrupt-pending from a different process that would normally have
to switch to the to-be-posted process.

      A great deal of overhead is required to handle various
interrupts in a generic interrupt handler.  The handler must be able
to queue interrupts, keep track of required enablements, and have
information on interrupt handlers (Interrupt Routine Addresses).
Additionally, there must be a way to mark a user as interrupt-pending
so that the dispatcher and scheduler can make sure the user is run
for interrupt reflection.

      The solution is a multi-part change of the way the generic
interrupt handler works.  By addressing each of the problem areas,
the performance problem is reduced significantly by the compounding
of multiple improvements.  The changes are as follows:

      Set an interrupt-type specific flag to indicate to the
interrupt handler that one or more interrupts is pending.  This
eliminates the path-length to get storage to queue the request.

      Change the generic interrupt handler to handle performance
critical interrupts...