|
| United States Worldwide |
|
Solaris MCFiscal 1995 Project Portfolio Report
Yousef A. Khalidi
Overall ObjectiveTo explore and develop new operating system software to harness the power of multi-computer (clustered) systems. The group also develops tools and technology to evaluate and improve the performance of the operating system and the underlying hardware.The project is developing Solaris MC, a prototype distributed operating system for multi-computers, i.e., a cluster of nodes. Solaris MC provides a single-system image-a cluster running Solaris MC appears to the user, to applications, and to the network as a single computer running the Solaris operating system. Solaris MC is built using a set of extensions to the base Solaris UNIX system and provides the same ABI/API as the base Solaris system, running unmodified Solaris applications.
Objective for FY95To design the major components of Solaris MC, and to start building an initial prototype of the system, running on a cluster of workstations connected through a high-speed network.
DescriptionSolaris MC has several interesting features. It:
The Solaris MC architecture provides fault-containment at the level of an individual node in the multi-computer. Solaris MC runs a separate kernel on each node. The failure of a node does not cause the whole system to fail. A failed node is detected, and system services are reconfigured to use the remaining nodes. Only the programs that were using the resources of the failed node are affected by the failure. Solaris MC does not introduce new failure modes into UNIX.
Solaris MC is built on top of the Solaris operating system. Most of Solaris MC consists of loadable modules extending Solaris, and minimizes the modifications to the existing Solaris kernel. Thus, Solaris MC shows how an existing, widely-used operating system can be extended to support clusters.
Existing application and device driver binaries run unmodified on Solaris MC. To provide this feature, Solaris MC has a global file system, extends process operations across all the nodes, allows transparent access to remote devices, and makes the cluster appear as a single machine on the network.
Solaris MC illustrates how the CORBA object model can be used to extend an existing UNIX to a distributed OS. At the same time, it also shows the advantages of implementing strong interfaces for kernel components by using the IDL interface definition language. Finally, Solaris MC illustrates how C++ can be used for kernel development, co-existing with previous code.
Solaris MC illustrates how the distributed techniques developed by Spring OS can be migrated into a commercial operating system. Solaris MC imports from Spring the idea of using a CORBA-compliant object model as the communication mechanism, the Spring virtual memory and file system architecture, and the use of C++ as the implementation language. One can view Solaris MC as a transition from the centralized Solaris operating system toward a more modular and distributed OS like Spring.
AccomplishmentsDuring FY95, the following was accomplished:
ReferencesPublicationsKhalidi, Yousef A. and Madhusudhan Talluri. "Improving the Address Translation Performance of Widely Shared Pages." Sun Microsystems Laboratories Technical Report SMLI TR-95-38 (February 1995). Thadani, Moti and Yousef A. Khalidi. "An Efficient Zero-Copy I/O Framework for UNIX." Sun Microsystems Laboratories Technical Report SMLI TR-95-39 (May 1995). Patents Issued
Title: Method and Apparatus for a Secure Protocol for Virtual
Memory Managers that Use Memory Objects
Return to the Table of Contents
webmaster@sunlabs.eng.sun.com | ||||||||||||||||||||||||||||||||