Check out the new USENIX Web site.

A distributed object-oriented programming platform on top of the Mach micro-kernel

Miguel Castro, Nuno Neves, Pedro Trancoso, and Pedro Sousa



This paper describes the architecture and implementation of MIKE - a version of the IK distributed persistent object-oriented programming platform built on top of the Mach microkernel.

MIKE's primary goal is to offer a single object-oriented programming paradigm for writing distributed applications. In MIKE an application programmer can use C++ almost as he would in a non-distributed system.

The platform supports fine grained objects which can be invoked in a location transparent way and whose references can be exchanged freely as invocation parameters. These objects are potentially persistent. MIKE supports the abstraction of one-level store, persistent objects are transparently loaded on demand when first invoked and saved to disk when the application terminates. Class objects are special persistent objects which are dynamically linked when needed. The platform also offers distributed garbage collection of non-persistent objects.

This paper discusses how MIKE makes use of Mach's features to offer the functionality described above and the techniques used to achieve good performance. MIKE is compared with the Unix versions of IK to evaluate the benefits of using Mach abstractions.

Download the full text of this paper in ASCII (71,586 bytes) and POSTSCRIPT (329,084 bytes) form.

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