Konzepte und Implementierungen moderner virtueller Maschinen
Matthias Ernst, Daniel Schneider
Diplomarbeit, 168 Seiten, Universität Hamburg, Dez. 2000.
(PDF, Neu! Jetzt auch als scheußliches HTML, abstract)

Automatic Persistent Memory Management For The Spotless Java Virtual Machine On The Palm Connected Organizer
Daniel Schneider, Bernd Mathiske, Matthias Ernst, Matt Seidl
Accepted to the Java Virtual Machine Research and Technology Symposium (
JVM'01), Monterey, CA, April 2001.

Automatic Persistent Memory Management for the Spotless[tm] Virtual Machine on the Palm Connected Organizer
Bernd Mathiske and Daniel Schneider,
Sun Microsystems Technical Report TR-2000-89, Palo Alto, CA, June 2000.

Matthias Ernst
A zero-overhead JVMPI plugin for finding first indications of memory leaks in production environments.
Where commercial tools kill the performance of your application by collecting uninteresting performance data (such as 'who allocated this object'),
this plugin stays inactive during runtime and simply dumps a very simple image of the Java heap on request.
This version has been successfully tested with Java 1.3.1 and 1.4.2.
Updated 12/15/04: Using JVMPI_VERSION_1_1 resolves crashes with 1.3.1 (Thorkild Stray).
Updated 10/19/04: Tested & build instructions for HP/UX.
Updated 08/19/04: Filter control characters (Bill Glover <>). Put under Apache License. VC++ Toolkit build instructions (Jack Shirazi <>)
Updated 07/22/04: Build instructions for OS/X (Brian Korver <>)
Updated 06/18/03: The first 64 chars of character arrays are printed as well. This helped me with unwanted large strings.
Updated 04/16/03: Support for pretty-printing array types. Does not work well with nested arrays (JVMPI shortcoming)
Updated 04/14/03: Visual C++ build instructions (thx to Jeppe Cramon <>)
Updated 04/02/03: ANSI C version, Cygwin compile instructions (thx to
C source).