Skip to end of metadata
Go to start of metadata

Welcome To The Open Source Maxine VM Project:
A Next Generation, Highly Productive Platform for Virtual Machine Research

Quick Link Summary

Project Overview

In this era of modern, managed languages we demand ever more from our virtual machines: better performance, more scalability, and support for the latest new languages. Research and experimentation is essential but challenging in the context of mature, complex, production VMs written in multiple languages.

The Maxine VM is a next generation platform that establishes a new standard of productivity in this area of research. It is written entirely in Java, completely compatible with modern Java IDEs and the standard JDK, features a modular architecture that permits alternate implementations of subsystems such as GC and compilation to be plugged in, and is accompanied by a dedicated development tool (the Maxine Inspector) for debugging and visualizing nearly every aspect of the VM's runtime state.

As of the 2.0 release, September 2013, Maxine is no longer an active project at Oracle Labs. We believe that Maxine represents the state of the art in a research VM, and actively encourage community involvement.

The Maxine sources, including VM, Inspector, and other supporting tools, are Open Source and are licensed under GPL version 2.0.

Recent Publications

ACM TACO journal paper that covers the architecture of Maxine:

Christian Wimmer, Michael Haupt, Michael L. Van De Vanter, Mick Jordan, Laurent Daynès, Douglas Simon: Maxine: An Approachable Virtual Machine For, and In, Java. In ACM Transactions on Architecture and Code Optimization, volume 9, issue 4, article 30. ACM Press, 2013. doi:10.1145/2400682.2400689

Presentation slides for the ECOOP Summer School 2012:

Christian Wimmer, Laurent Daynes: Maxine: A Virtual Machine For, and In, Java


Some of the features of Maxine that make it a compelling platform for (J)VM research include:

  • Nearly all of the code base is written in Java and exploits advanced language features appearing in JDK 5 and beyond: for example annotations, static imports, and generics.
  • The VM integrates with Oracle's standard JDK. There's no need to download (and build) other implementations of the standard Java classes. In addition, Oracle's JDK is the most compliant and mature implementation of the standard Java classes available.
  • The source code supports development in Eclipse, Netbeans or IntelliJ all of which provide excellent support for cross-referencing and browsing the code. It also means that refactoring can be confidently employed to continuously improve the structure of the code.
  • The Maxine Inspector produces visualizations of nearly every aspect of the VM runtime state, and provides advanced, VM-specific debugging.
  • The workspace includes mx, a powerful command line tool for building the VM as well as launching other programs in the code base, such as the Inspector.
  • The VM and Inspector run on modern platforms.
  • The workspace is hosted in a Mercurial repository making downloading and collaboration easier.

Getting Started

Who writes this wiki?

  • Members of the core Maxine team at Oracle Labs have write access at this time; please get in touch if you'd like to contribute content.
  • We encourage public comments on these pages, especially where a page should answer your question but doesn't. You must be registered (free) and logged in to comment; please post on our user mailing list if this doesn't work for you.
  • If possible, links to relevant email discussion threads, e.g., on the Maxine mailing list would make your comments even more useful.

1 formerly Sun Microsystems Laboratories

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Sign up or Log in to add a comment or watch this page.

The individuals who post here are part of the extended Oracle community and they might not be employed or in any way formally affiliated with Oracle. The opinions expressed here are their own, are not necessarily reviewed in advance by anyone but the individual authors, and neither Oracle nor any other party necessarily agrees with them.