225 lines
9.6 KiB
Text
225 lines
9.6 KiB
Text
#include "include/layout.wml"
|
||
|
||
<set-var last-modified-author="prk">
|
||
|
||
<subject "GNU Classpath Success Stories">
|
||
|
||
<box>
|
||
<boxtitle><a name="jvm">Classpath::JVM</a></boxtitle>
|
||
|
||
<boxitem>
|
||
<en>
|
||
<p>
|
||
The primary target for GNU Classpath was originally <createlink
|
||
url="http://www.hungry.com/old-hungry/products/japhar/" name="Japhar">. Japhar-0.07 works out-of-the-box with
|
||
GNU Classpath-0.00. Current Japhar versions do not work with current versions
|
||
of GNU Classpath.
|
||
</p>
|
||
|
||
<p>In the meantime, many other JVM have choosen GNU Classpath as their library implementation:</p>
|
||
|
||
<table border="0" width="100%" cellpadding="6">
|
||
<!--tr><th>JVM</th><th>Description</th></tr-->
|
||
|
||
<project url="http://aegisvm.sourceforge.net/" name="AegisVM">
|
||
The Aegis VM Project is an on-going effort to develop a lightweight,
|
||
secure virtual machine for executing Java bytecode. The Aegis VM will
|
||
eventually feature a modular bytecode verification architecture that
|
||
allows user-defined static verification procedures to be integrated
|
||
into the VM's dynamic linking process through pluggable verification
|
||
modules.
|
||
</project>
|
||
|
||
<project url="http://gcc.gnu.org/java/" name="GCJ">
|
||
Although GNU Classpath cannot be directly compiled for use with
|
||
GCJ at this time, a lot of work has been done to merge GCJ class
|
||
library code and GNU Classpath class library code. This has resulted
|
||
in a better version of each. The current merge status between the two
|
||
projects is <createlink url="http://gcc.gnu.org/java/libgcj-classpath-compare.html"
|
||
name="located here">.
|
||
</project>
|
||
|
||
<project url="http://www.ikvm.net/" name="IKVM.NET">
|
||
A JVM for the .NET platform.
|
||
Runs on top of <createlink url="http://www.go-mono.org/" name="Mono">.
|
||
</project>
|
||
|
||
<project url="http://sourceforge.net/projects/jamiga" name="JAmiga">
|
||
A JRE implementation for the Amiga Platform.
|
||
</project>
|
||
|
||
<project url="http://jamvm.sourceforge.net/" name="JamVM">
|
||
JamVM is a Java Virtual Machine which conforms to the JVM specification version 2 (blue book). In comparison to most other VM's (free and commercial) it is extremely small, with a stripped executable on PowerPC of only ~100K, and Intel 80K. However, unlike other small VMs (e.g. KVM) it is designed to support the full specification, and includes support for object finalisation, the Java Native Interface (JNI) and the Reflection API.
|
||
</project>
|
||
|
||
<project url="http://www.oberon.ethz.ch/jaos/" name="Jaos">
|
||
The Jaos VM is a JVM using GNU Classpath implemented on top of the
|
||
<createlink url="http://bluebottle.ethz.ch/" name="Aos/Bluebottle"> kernel.
|
||
This kernel offers many useful features like garbage collected memory
|
||
management, dynamic module loading, and object-oriented model. This makes the
|
||
implementation of a JVM particularly attractive and simple.
|
||
</project>
|
||
|
||
<project url="http://jcvm.sourceforge.net/" name="JC">
|
||
JC is a Java virtual machine implementation that converts class
|
||
files into C source files using the Soot Java bytecode analysis
|
||
framework, compiles them with GCC, and loads them using a built-in
|
||
ELF object file loader.
|
||
</project>
|
||
|
||
<project url="http://www.ibm.com/developerworks/oss/jikesrvm/" name="Jikes RVM">
|
||
Jikes RVM uses GNU Classpath for all of its libraries. Instructions for using
|
||
Classpath are provided in the Jikes RVM user's guide as of the Jikes RVM
|
||
release 2.2.1 (4/7/03). Nightly regression tests are run against the latest
|
||
Classpath release and the Classpath CVS head. The results are posted on the
|
||
jikesrvm-regression mailing list, which is archived and available on the Jikes
|
||
RVM home page.
|
||
</project>
|
||
|
||
<project url="http://jnode.sourceforge.net/" name="JNode">
|
||
JNode is a <i>Java New Operating System Design Effort</i>.
|
||
The goal is to get an simple to use and install Java operating system for personal use. Any java application should run on it, fast & secure!
|
||
</project>
|
||
|
||
<project url="http://www.eecg.toronto.edu/~doylep/jupiter/" name="Jupiter">
|
||
This VM also uses a modified version of the GNU Classpath libraries.
|
||
</project>
|
||
|
||
<project url="http://www.kaffe.org/" name="Kaffe">
|
||
Kaffe OpenVM is a complete virtual machine, library framework and
|
||
tools for programming in the java language. It has its own
|
||
implementation of part of the core libraries, but uses large parts of
|
||
the GNU Classpath framework.
|
||
</project>
|
||
|
||
<project url="http://kissme.sourceforge.net/" name="Kissme">
|
||
This VM is almost always guaranteed to work with GNU Classpath CVS
|
||
source code.
|
||
</project>
|
||
|
||
<project url="http://www.intel.com/research/mrl/orp/" name="ORP">
|
||
Information about ORP
|
||
can also be found at <createlink url="http://orp.sourceforge.net/"
|
||
name="http://orp.sourceforge.net/">. ORP 1.10 does not work with
|
||
current GNU Classpath libraries. Information is available in the
|
||
mailing list archives.
|
||
</project>
|
||
|
||
<project url="http://www.sablevm.org/" name="SableVM">
|
||
SableVM is a robust, extremely portable, efficient, and
|
||
specifications-compliant Java Virtual Machine that aims to be easy to
|
||
maintain and to extend. It features a state-of-the-art, efficient
|
||
interpreter engine. Its source code is very accessible and easy to
|
||
understand, and has many robustness features that have been the object
|
||
of careful design.
|
||
</project>
|
||
|
||
<project url="http://www.cacaojvm.org/" name="CACAO">
|
||
CACAO is a research Java Virtual Machine developed at the Vienna
|
||
University of Technology. It has a compile-only approach, which means
|
||
there is no interpreter at all but a JIT compiler ported to different
|
||
architectures, like Alpha, i386, MIPS, PowerPC, and x86_64. The main
|
||
aim of CACAO is to keep the JIT compilation time as small as possible
|
||
while producing quite fast code.
|
||
</project>
|
||
|
||
</table>
|
||
</en>
|
||
|
||
<H4>Other projects using GNU classpath</H4>
|
||
<en>
|
||
<table border="0" width="100%" cellpadding="6">
|
||
<!--tr><th>Project</th><th>Description</th></tr-->
|
||
<project url="http://www.flex-compiler.lcs.mit.edu/" name="Flex Compiler">
|
||
FLEX is a compiler infrastructure written in Java for Java. Applications
|
||
include a program analysis and transformation framework for distributed
|
||
and embedded systems. Native backends exist for the StrongARM and MIPS
|
||
processors; it can also generate portable C code that can run on any
|
||
platform with gcc.
|
||
</project>
|
||
</table>
|
||
</en>
|
||
|
||
</boxitem>
|
||
|
||
<!--
|
||
<boxtitle><a name="applications">Classpath::Applications</a></boxtitle>
|
||
<boxitem>
|
||
Having an application running on a JVM using classpath implicitly proves that
|
||
classpath is fit enough for its purpose.
|
||
<p>The following free software applications have been run on classpath-based environments:
|
||
<ul>
|
||
<li>Eclipse (on gcj)
|
||
</ul>
|
||
</boxitem>
|
||
-->
|
||
|
||
<boxtitle><a name="research">Classpath::Research</a></boxtitle>
|
||
<boxitem>
|
||
<p>Many research projects have choosen GNU Classpath as their implementation of choice for
|
||
the Java Libraries, mostly because it is free software, which means the freedom to use,
|
||
analyze, and change the code for one's purposes.</p>
|
||
|
||
##
|
||
# Shortcut for table entries
|
||
#
|
||
<define-tag entry endtag=required>
|
||
<preserve name>
|
||
<set-var %attributes>
|
||
<tr>
|
||
<td valign="top"><get-var name></td>
|
||
<td>%body</td>
|
||
</tr>
|
||
<restore name>
|
||
</define-tag>
|
||
|
||
<p>The following research projects are using GNU Classpath:
|
||
<table border="0" cellpadding="6">
|
||
<!--tr><th>Project</th><th>Description</th>
|
||
</tr-->
|
||
|
||
<entry name="Intel's ORP">
|
||
<createlink url="http://orp.sourceforge.net/" name="ORP"> (Open Runtime Platform) is an open source research infrastructure project that provides these features thus enabling the rapid evolution of systems research of dynamic compilation and memory management.
|
||
|
||
<p>[<createlink name="Publications" url="http://www.intel.com/research/mrl/library/java-pubs.htm">]
|
||
</entry>
|
||
|
||
<entry name="IBM's Jikes RVM">
|
||
<createlink url="http://www-124.ibm.com/developerworks/oss/jikesrvm/" name="Jikes RVM"> (the Jikes Research Virtual Machine) provides the research community with a flexible open testbed to prototype virtual machine technologies and experiment with a large variety of design alternatives. The virtual machine infrastructure in the Jikes RVM release was independently developed as part of the Jalape<70>o research project at the IBM T.J. Watson Research Center.
|
||
|
||
<p>[<createlink name="Publications" url="http://www-124.ibm.com/developerworks/oss/jikesrvm/info/papers.shtml">]
|
||
</entry>
|
||
|
||
<entry name="SableVM">
|
||
<createlink url="http://www.sablevm.org/" name="SableVM"> SableVM is a
|
||
highly portable and efficient Java virtual machine, using
|
||
state-of-the-art interpratation techniques. Its goals are to be
|
||
reasonably small, fast, and compliant with the various specifications
|
||
(JVM specification, JNI, invocation interface, etc.).
|
||
|
||
<p> The initial development of SableVM was done as part of the
|
||
Ph.D. research project of <createlink name="Etienne Gagnon"
|
||
url="http://www.info.uqam.ca/~egagnon">. Continuing development of
|
||
SableVM project involves the <createlink name="Sable Research Group"
|
||
url="http://www.sable.mcgill.ca/"> (McGill University and Universite
|
||
du Quebec a Montreal), and other generous <createlink name="Free
|
||
software contributors"
|
||
url="http://devel.sablevm.org/svn/repository/sablevm/branches/staging/AUTHORS">.
|
||
|
||
<p>[<createlink name="SableVM Documents" url="http://www.sablevm.org/docs.html">]
|
||
<br>[<createlink name="Sable Publications (Papers)" url="http://www.sable.mcgill.ca/publications/papers/">]
|
||
</entry>
|
||
|
||
<entry name="Jaos">
|
||
<createlink name="Jaos" url="http://www.oberon.ethz.ch/jaos/"> (Java on Active Object System) is a Java Virtual Machine for the Bluebottle System and a case study in interoperability between the Oberon and Java Languages.
|
||
|
||
<p>Jaos was developed as part of Patrik Reali's Ph.D research project at the <createlink name="Programming Languages and Run-Time Systems Research Group" url="http://www.cs.inf.ethz.ch/gutknecht/"> at <createlink name="ETH Zurich" url="http://www.ethz.ch">.
|
||
|
||
<p>[<createlink name="Publications" url="http://www.oberon.ethz.ch/jaos/docs/index.html">]
|
||
</entry>
|
||
|
||
</table>
|
||
|
||
</boxitem>
|
||
|
||
</box>
|