Check out the new USENIX Web site.

Fast Interrupt Priority Management in Operating System Kernels


Daniel Stodolsky & J. Bradley Chen   Brian N.  Bershad
School of Computer Science           Department of Computer Science
Carnegie Mellon University           and Engineering
Pittsburgh, Pennsylvania             University of Washington
                                     Seattle, Washington

Abstract

In this paper we describe a new, low-overhead technique for manipulating processor interrupt state in an operating system kernel. Both uniprocessor and multiprocessor operating systems protect against uniprocessor deadlock and data corruption by selectively enabling and disabling interrupts during critical sections. This happens frequently during latency-critical activities such as IPC, scheduling, and memory management. Unfortunately, the cycle cost of modifying the interrupt mask has increased by an order of magnitude in recent processor architectures. In this paper we describe optimistic interrupt protection, a technique which substantially reduces the cost of interrupt masking by optimizing mask manipulation for the common case of no interrupts. We present results for the Mach 3.0 microkernel operating system, although the technique is applicable to other kernel architectures, both micro and monolithic, that rely on interrupts to manage devices.


Download the full text of this paper in ASCII form (22,848 bytes).

To Become a USENIX Member, please see our Membership Information.