This project will design and experiment with a new generation operating system that supports the construction of distributed applications from a collection of building block pieces. The approach is based on the observation that communication objects are the key to accessing services and resources in a distributed environment. In such an environment, users specify what services and resources they want to access, and the operating system dynamically loads the communication objects necessary to access those services and resources. At the heart of the system is an object infrastructure. This infrastructure has two important features. First, it is independent of the user/kernel boundary. That is, the component objects can reside in either the kernel or in one or more user address spaces, and objects can easily be migrated between address spaces. Thus, new objects can be built and tested in user address spaces for protection reasons, and later migrated into the kernel for performance reasons. Second, the kernel itself is dynamically configurable. That is, objects can be loaded into (and deleted from) the kernel at runtime as required by the active applications. This feature means that kernel size is not a dominant factor--all trusted communication objects can reside in the kernel while they are being used. Within this context, the proposal has two major themes: -Designing operating system support for dynamically composable communication services, including implementation techniques that support fast communication on shared-memory multiprocessors -Investigating various decompositions of distributed systems into primitive building blocks, and understanding the principles that govern how those building blocks are composed to provide higher- level services.

Project Start
Project End
Budget Start
1991-09-01
Budget End
1995-08-31
Support Year
Fiscal Year
1991
Total Cost
$128,814
Indirect Cost
Name
University of Arizona
Department
Type
DUNS #
City
Tucson
State
AZ
Country
United States
Zip Code
85721