Godmar Back, Patrick Tullmann, Leigh Stoller, Wilson C. Hsieh, Jay Lepreau
{gback,tullmann,stoller,wilson,lepreau}@cs.utah.edu
Technical Report UUCS-98-015
August 1998
The Flux Research Group
Department of Computer Science
University of Utah
50 S. Central Campus Drive Rm. 3190
Salt Lake City, Utah 84112-9205
We demonstrate how this challenge can be addressed in Java operating systems. First, we describe the technical issues that arise when implementing a process model in Java. In particular, we lay out the design choices for managing resources. Second, we describe the solutions that we are exploring in two complementary projects, Alta and GVM. GVM is similar to a traditional monolithic kernel, whereas Alta closely models the Fluke operating system. Features of our prototypes include flexible control of processor time using CPU inheritance scheduling, per-process memory controls, fair allocation of network bandwidth, and execution directly on hardware using the OSKit. Finally, we compare our prototypes with other language-based operating systems and explore the tradeoffs between the various designs.
The full technical report is also available.