Overview
The majority of software today is written in managed languages, and new languages continue to emerge, demanding high performance and scalable virtual machines. A flexible and extensible virtual machine is invaluable in researching new implementation techniques, new language features, and evaluating design alternatives. Yet as existing virtual machines have progressed in performance and functionality, their implementations have become unmanageably complex for all but dedicated product engineers.
Many years of experience have shown that the Java programming language and its development tools provide a major productivity improvement for application developers. Unfortunately, the popularity of Java as an application development language hasn't penetrated deeply into systems programming, particularly VM development. We would like to promote use of the Java language in managed runtime research and development and in systems programming in general. The Maxine project is exploring software designs, methodologies and tools that make VM development more productive.
Maxine is a VM designed for and written in the Java(TM) Programming Language with an emphasis on leveraging modular design, and code reuse to achieve flexibility, configurability, and productivity for academic and industrial virtual machine researchers.
The Maxine Inspector is an all-in-one tool highly specialized for supporting development of the Maxine VM; the inspector leverages code reuse with the Maxine VM and provides a variety of highly productive services for debugging and inspecting the runtime state of the VM at both the machine- and language-level levels of abstraction, as well as support specially tailored for development of garbage collection implementations.
Getting Started
- Download and build Maxine from source on any of the supported platforms.
- Send any questions you have to this mailing list.
- Read about the current status of the VM.
- Learn more about the Inspector, the companion tool for debugging the VM.
- View the various presentations and talks about Maxine.
- Read the FAQ.
- Consider collaborating on any of the future work we've planned for Maxine.
Who writes this wiki?
- Members of the core Maxine team at Sun Labs.
- There is no public write access, except for leaving page comments. You must be registered and logged in to leave comments.
- Please do add page comments when a page should answer your question but doesn't. (That means, potentially on any page.)
- The most effective page comments will include links to relevant email discussion threads, e.g., on the Maxine mailing list.
- Anybody with a (demonstrable) working knowledge of Maxine internals will be welcome to contribute content. If you think you should have write permission and don't, contact the wiki administrator.