Check out the new USENIX Web site.

Solaris MC: A Multi Computer OS


Yousef A. Khalidi, Jose M. Bernabeu, Vlada Matena, Ken Shirriff, and Moti Thadani
Sun Microsystems Laboratories

Abstract

Solaris MC is a prototype distributed operating system for multi-computers (i.e. clusters of nodes) that provides a single-system image: a cluster appears to the user and applications as a single computer running the Solaris, operating system. Solaris MC is built as a set of extensions to the base Solaris UNIX, system and provides the same ABI/API as Solaris, running unmodified applications. The components of Solaris MC are implemented in C++ through a CORBA-compliant object oriented system with all new services defined by the IDL definition language. Objects communicate through a runtime system that borrows from Solaris doors and Spring subcontracts.

Solaris MC is designed for high availability: if a node fails, the remaining nodes remain operational. Solaris MC has a distributed caching file system with Unix consistency semantics, based on the Spring virtual memory and file system architecture. Process operations are extended across the cluster, including remote process execution and a global /proc file system. The external networks is transparently accessible from any node in the cluster. The prototype is fairly complete-we regularly exercise the system by running multiple copies of an off-the-shelf commercial database system.


Download the full text of this paper in ASCII (51,688 bytes) and POSTSCRIPT (205,427 bytes) form.

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