Freies Vortragsprogramm Practical Linux Firmenvorträge Workshops Kongresse 
Übersicht Donnerstag Freitag  Samstag 

Freies Vortragsprogramm (Do, 04.05.2006)

CACAO Java Virtual Machine

von Christian Thalinger (Vienna University of Technology)

Donnerstag, 04.05.2006, Saal 6.1, 17:00-18:00 Uhr

The CACAO Java Virtual Machine was designed as a 64-bit Java Virtual Machine at the Vienna University of Technology in 1996. The primary focus of CACAO was to build the fastest Just-In-Time compiler for the Alpha architecture available at this time. Shortly after a MIPS port was available. The early CACAO implementation was trimmed to run some benchmarks and daily-usage console Java programs like Java compilers. CACAO had a simple thread support and the run time system was designed to be very fast but functional, that means static exceptions and many global variables. The development of CACAO has nearly stopped in 1999. In 2002 the CACAO development team decided to push the CACAO development further and to port CACAO to the famous i386 architecture. The new x86_64 (AMD64/EM64T) and PowerPC architectures followed. To become a fully functional Java Virtual Machine the loader system has been rewritten to support lazy class loading and linking, the garbage collector was replaced by the Boehm-Demers-Weiser conservative garbage collector and the proprietary SUN classes have been replaced by the GNU Classpath. Finally a native thread implementation was added. In December 2004 CACAO was released under the GPL.

In 2005 CACAO got a huge boost and is now able to run major Java applications like Eclipse, Tomcat, and JBoss, and can run AWT/Swing applications. The JIT compiler is currently available for various architectures, namely Alpha, Arm (not GPL'd), i386, MIPS (32- (not GPL'd) and 64-bit), PowerPC (32-bit), x86_64. Furthermore, a vmgen-based interpreter was integrated into CACAO in mid-2005.

CACAO is also available in various GNU/Linux distributions like Debian, Ubuntu, and Gentoo.

Über den Autor Christian Thalinger:

Christian Thalinger studied computer science at the Vienna University of Technology. In 2003 he wrote his diploma thesis about "Optimizing and Porting the CACAO JVM". Currently he is working in the Christian Doppler Laboratory "Compilation Techniques for Embedded Processors" and is writing his Ph.D. thesis. His contributions to CACAO include the i386 and x86_64 port, major rewrites of the class loading system and the JIT compiler, JIT compiler optimizations and enhancements in every part of CACAO.