From: deneb@unixwave.org (enc@atstake.com) To: lwn@lwn.net Subject: Java Opensource VM Date: Fri, 29 Jun 2001 14:39:58 +0200 (CEST) From tullmann@cs.utah.edu Fri Jun 29 14:37:42 2001 From: Patrick Tullmann <tullmann@cs.utah.edu> Newsgroups: comp.os.research Subject: Initial release of the JanosVM Organization: University of Utah School of Computing Approved: comp-os-research@ftp.cse.ucsc.edu Originator: osr@cse.ucsc.edu NNTP-Posting-Host: ftp.cse.ucsc.edu Message-ID: <3af773d6$1@news.ucsc.edu> Date: 7 May 2001 21:19:34 -0800 X-Trace: 7 May 2001 21:19:34 -0800, ftp.cse.ucsc.edu Lines: 57 Path: news4.aus1.giganews.com!nntp4!nntp3.aus1.giganews.com!nntp2.aus1.giganews.com!news.maxwell.syr.edu!newsfeed.stanford.edu!newsfeed.berkeley.edu!ucberkeley!news.ucsc.edu!osr Xref: nntp3.aus1.giganews.com comp.os.research:2899 X-Cache: nntpcache 2.4.0b5 Janos Virtual Machine v0.5.0 ---------------------------- The University of Utah's Flux Research Group announces the initial release of the JanosVM, v0.5.0. The Janos Virtual Machine (JanosVM) is an Open Source virtual machine for executing Java bytecodes. Unlike any available virtual machine, the JanosVM supports multiple, separate process-like entities (called "teams" in the JanosVM) within a single VM, without reliance on any underlying OS or hardware support for such separation. The JanosVM supports separate per-team heaps, per-team garbage collection threads, inter-team thread migration, safe cross-team reference objects, and a spiffy tutorial. Designed to support asynchronous termination of buggy, uncooperative, or malicious Java bytecode applications, the JanosVM provides robust and scalable multi-process support within a single virtual machine. The JanosVM exposes the primitives needed to build a multi-process JVM, allowing users of the JanosVM to build their own Java-oriented operating systems. The JanosVM does not provide a complete environment for running untrusted user code. Rather, it provides clean and efficient building blocks for building robust Java-based operating systems. For example, when combined with the custom runtimes available on our site, the JanosVM provides an environment for safely executing untrusted Java code in an active network. The JanosVM is useful without any of the other Janos components. Custom runtimes could meet the needs of embedded systems, PDAs, servlet environments, or peer-to-peer and mobile agent platforms. The JanosVM provides a wealth of novel infrastructure for building a Java-oriented operating system including: a flexible and extensible framework for associating and managing per-team resources; simple yet powerful mechanisms for sharing data and types between teams; cross-language profiling of both C and Java code; an extensible tool for remotely controlling the JanosVM; and complete source for the system. The JanosVM is GPL'ed free software and was derived from the KaffeOS Java operating system [1]. KaffeOS, in turn, is based on Kaffe, a free and portable Java virtual machine [2]. Download documentation, papers, and the latest version at: http://www.cs.utah.edu/flux/janos/ Please send bugs, questions, or comments to: janos-discuss@flux.cs.utah.edu [1] KaffeOS: http://www.cs.utah.edu/flux/papers/kaffeos-osdi00-base.html [2] Kaffe: http://www.kaffe.org/ * Java is a registered trademark of Sun Microsystems, Inc. * Kaffe is a registered trademark of Transvirtual Technologies, Inc.