O.S. Evaluations

Kyriakos Lakkas (klakkas@cs.ucsd.edu)
Thu, 20 Apr 2000 01:16:38 -0700

Jones, Chansler, Durham, Schwans, and Vegdahl, "StarOS, a Multiprocessor Operating System for the Support of Task Forces".

This paper presents StarOS, an operating system designed to support task forces for the 50 processor Cm* multi-microprocessor computer. After a thorough definition of task forces and a brief overview of the target architecture, the authors present the features of StarOS. Trying to create an O.S. that supports the construction and execution of task forces, using in every extent possible the attributes of the Cm* architecture, they built a message passing, object-oriented system. All information is encoded and stored in unique and distinct objects, that are accessed by processes using capabilities. The system provides several types of objects (representation types), that may be used by the user to create new, abstract types of objects. To exploit parallelism, StarOS provides for a message passing scheme between outstanding processes. After presenting these basic ideas, the rest of the paper goes through the implementation details of the system.

The description of the system seems a bit "abstract". It is not clear throughout the paper what actually is built in the system, what is possible to build, and even more, what they would like to build. Especially when they discuss the reconfigurability of the system, they seem to just "throw ideas", instead of suggesting (let alone presenting) a solution. Finally, I would expect some performance numbers in the "conclusion" paragraph, since they say that they have a first version of this O.S. running since 1977 (my year of birth, by the way...).

John K. Ousterhout, Donald A. Scelza, and Pradeep S. Sindhu, "Medusa: An Experiment in Distributed Operating Systems Structure".

The second paper presents a second operating system design for the same Cm* multi-microprocessor computer. It is similar in many ways to StarOS (e.g. task forces, message passing etc.), but the Medusa system specifies more specific functions for the task forces. Protection is another area where the two operating systems differ, since Medusa does not attempt to provide fine-grained control for object privileges. The reason for that is that the authors chose to implement a very simple and compact protection system since that code would be replicated on the memory of all processors.

Again, since the system was not completely implemented, it is hard to believe that everything eventually worked. The authors again claim that their design "would do this", "could do that", and so on. They say that everything is under rigorous testing, but if that was indeed the case, why didn't they wait for another few months to publish something backed with solid performance results?