Check out the new USENIX Web site.

Home About USENIX Events Membership Publications Students
USENIX 2nd Symposium on OS Design and Implementation (OSDI '96)

Dynamic Binding for an Extensible System

Przemyslaw Pardyak and Brian Bershad
Univeristy of Washington

Abstract

An extensible system requires a means to dynamically bind extensions into executing code. SPIN extensible operating system uses an event-based invocation mechanism to provide this functionality in a flexible, transparent, safe, and efficient way. Events offer a uniform model of extensibility, whereby the system's configuration can change without changing any of its components. Events are defined with the granularity and syntax of procedures but provide extended procedure call semantics such as conditional execution, multicast, and asynchrony. By installing a handler on an event, an extension's code can execute in response to activities at the granularity of procedure call. Our system uses runtime code generation to ensure that event delivery has low overhead and scales well with the number of handlers. This paper describes the design, use and performance of events in the SPIN operating system.
?Need help? Use our Contacts page.

Last changed: 9 Jan 2003 aw
Conference Index
USENIX home