{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,24]],"date-time":"2026-02-24T18:12:38Z","timestamp":1771956758492,"version":"3.50.1"},"reference-count":43,"publisher":"Association for Computing Machinery (ACM)","issue":"4","license":[{"start":{"date-parts":[[2013,1,1]],"date-time":"2013-01-01T00:00:00Z","timestamp":1356998400000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Archit. Code Optim."],"published-print":{"date-parts":[[2013,1]]},"abstract":"<jats:p>A highly productive platform accelerates the production of research results. The design of a Virtual Machine (VM) written in the Java\u2122 programming language can be simplified through exploitation of interfaces, type and memory safety, automated memory management (garbage collection), exception handling, and reflection. Moreover, modern Java IDEs offer time-saving features such as refactoring, auto-completion, and code navigation. Finally, Java annotations enable compiler extensions for low-level \u201csystems programming\u201d while retaining IDE compatibility. These techniques collectively make complex system software more \u201capproachable\u201d than has been typical in the past.<\/jats:p>\n          <jats:p>The Maxine VM, a metacircular Java VM implementation, has aggressively used these features since its inception. A co-designed companion tool, the Maxine Inspector, offers integrated debugging and visualization of all aspects of the VM's runtime state. The Inspector's implementation exploits advanced Java language features, embodies intimate knowledge of the VM's design, and even reuses a significant amount of VM code directly. These characteristics make Maxine a highly approachable VM research platform and a productive basis for research and teaching.<\/jats:p>","DOI":"10.1145\/2400682.2400689","type":"journal-article","created":{"date-parts":[[2013,1,22]],"date-time":"2013-01-22T15:28:56Z","timestamp":1358868536000},"page":"1-24","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":67,"title":["Maxine"],"prefix":"10.1145","volume":"9","author":[{"given":"Christian","family":"Wimmer","sequence":"first","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael","family":"Haupt","sequence":"additional","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Michael L.","family":"Van De Vanter","sequence":"additional","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Mick","family":"Jordan","sequence":"additional","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Laurent","family":"Dayn\u00e8s","sequence":"additional","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Douglas","family":"Simon","sequence":"additional","affiliation":[{"name":"Oracle Labs, CA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2013,1,20]]},"reference":[{"key":"e_1_2_1_1_1","doi-asserted-by":"publisher","DOI":"10.1147\/sj.391.0211"},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1145\/320384.320418"},{"key":"e_1_2_1_3_1","doi-asserted-by":"publisher","DOI":"10.1145\/1297081.1297091"},{"key":"e_1_2_1_4_1","doi-asserted-by":"publisher","DOI":"10.1145\/353171.353175"},{"key":"e_1_2_1_5_1","doi-asserted-by":"publisher","DOI":"10.1145\/277650.277734"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/945445.945462"},{"key":"e_1_2_1_7_1","doi-asserted-by":"publisher","DOI":"10.5555\/998675.999420"},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1145\/1167473.1167488"},{"key":"e_1_2_1_9_1","unstructured":"Blackburn S. M. Salishev S. I. Danilov M. Mokhovikov O. A. Nashatyrev A. A. Novodvorsky P. A. Bogdanov V. I. Li X. F. and Ushakov D. 2008. The Moxie JVM experience. Tech. rep. TR-CS-08-01 Department of Computer Science The Australian National University.  Blackburn S. M. Salishev S. I. Danilov M. Mokhovikov O. A. Nashatyrev A. A. Novodvorsky P. A. Bogdanov V. I. Li X. F. and Ushakov D. 2008. The Moxie JVM experience. Tech. rep. TR-CS-08-01 Department of Computer Science The Australian National University."},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1145\/304065.304113"},{"key":"e_1_2_1_11_1","unstructured":"Chambers C. 1998. The Cecil language specification and rationale version 3.0. Tech. rep. Department of Computer Science and Engineering University of Washington.  Chambers C. 1998. The Cecil language specification and rationale version 3.0. Tech. rep. Department of Computer Science and Engineering University of Washington."},{"key":"e_1_2_1_12_1","doi-asserted-by":"publisher","DOI":"10.1145\/74877.74884"},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.5555\/646153.679523"},{"key":"e_1_2_1_14_1","doi-asserted-by":"publisher","DOI":"10.1145\/800017.800542"},{"key":"e_1_2_1_15_1","doi-asserted-by":"publisher","DOI":"10.1145\/1508293.1508305"},{"key":"e_1_2_1_16_1","unstructured":"Goldberg A. and Robson D. 1983. Smalltalk-80: The Language and Its Implementation. Addison-Wesley.   Goldberg A. and Robson D. 1983. Smalltalk-80: The Language and Its Implementation. Addison-Wesley."},{"key":"e_1_2_1_17_1","doi-asserted-by":"publisher","DOI":"10.1145\/143095.143114"},{"key":"e_1_2_1_18_1","doi-asserted-by":"publisher","DOI":"10.1145\/263698.263754"},{"key":"e_1_2_1_19_1","unstructured":"Java.net. 2012. Java HotSpot client compiler visualizer. http:\/\/java.net\/projects\/c1visualizer\/  Java.net. 2012. Java HotSpot client compiler visualizer. http:\/\/java.net\/projects\/c1visualizer\/"},{"key":"e_1_2_1_20_1","unstructured":"Jikes RVM. 2002. The Jikes#8482; research virtual machine user's guide v2.1.1. http:\/\/sourceforge.net\/projects\/jikesrvm\/files\/jikesrvm\/2.1.1\/jikesrvm-2.1.1.tar.gz file: userguide.ps  Jikes RVM. 2002. The Jikes#8482; research virtual machine user's guide v2.1.1. http:\/\/sourceforge.net\/projects\/jikesrvm\/files\/jikesrvm\/2.1.1\/jikesrvm-2.1.1.tar.gz file: userguide.ps"},{"key":"e_1_2_1_21_1","doi-asserted-by":"publisher","DOI":"10.1145\/1369396.1370017"},{"key":"e_1_2_1_22_1","unstructured":"Lindholm T. Yellin F. Bracha G. and Buckley A. 2012. The Java virtual machine specification Java SE 7 edition. http:\/\/docs.oracle.com\/javase\/specs\/jvms\/se7\/jvms7.pdf   Lindholm T. Yellin F. Bracha G. and Buckley A. 2012. The Java virtual machine specification Java SE 7 edition. http:\/\/docs.oracle.com\/javase\/specs\/jvms\/se7\/jvms7.pdf"},{"key":"e_1_2_1_23_1","doi-asserted-by":"publisher","DOI":"10.1145\/800025.1198360"},{"key":"e_1_2_1_24_1","doi-asserted-by":"crossref","unstructured":"Ngo T. and Barton J. 2000. Debugging by remote reflection. In Proceedings of Euro-Par 2000 - Parallel Processing. Lecture Notes in Computer Science. Springer 1031--1038.   Ngo T. and Barton J. 2000. Debugging by remote reflection. In Proceedings of Euro-Par 2000 - Parallel Processing. Lecture Notes in Computer Science. Springer 1031--1038.","DOI":"10.1007\/3-540-44520-X_147"},{"key":"e_1_2_1_25_1","doi-asserted-by":"publisher","DOI":"10.1145\/1869459.1869477"},{"key":"e_1_2_1_26_1","unstructured":"Oracle. 2012a. The Java HotSpot performance engine architecture. http:\/\/www.oracle.com\/technetwork\/java\/whitepaper-135217.html  Oracle. 2012a. The Java HotSpot performance engine architecture. http:\/\/www.oracle.com\/technetwork\/java\/whitepaper-135217.html"},{"key":"e_1_2_1_27_1","unstructured":"Oracle. 2012b. Maxine virtual edition. http:\/\/labs.oracle.com\/projects\/guestvm\/  Oracle. 2012b. Maxine virtual edition. http:\/\/labs.oracle.com\/projects\/guestvm\/"},{"key":"e_1_2_1_28_1","unstructured":"Oracle. 2012c. Maxine VM source code. http:\/\/kenai.com\/projects\/maxine\/  Oracle. 2012c. Maxine VM source code. http:\/\/kenai.com\/projects\/maxine\/"},{"key":"e_1_2_1_29_1","unstructured":"Oracle. 2012d. Maxine VM wiki. https:\/\/wikis.oracle.com\/display\/MaxineVM\/  Oracle. 2012d. Maxine VM wiki. https:\/\/wikis.oracle.com\/display\/MaxineVM\/"},{"key":"e_1_2_1_30_1","unstructured":"Oracle. 2012e. OpenJDK. http:\/\/openjdk.java.net\/  Oracle. 2012e. OpenJDK. http:\/\/openjdk.java.net\/"},{"key":"e_1_2_1_31_1","unstructured":"Oracle. 2012f. OpenJDK: Common VM interface. http:\/\/openjdk.java.net\/projects\/cvmi\/  Oracle. 2012f. OpenJDK: Common VM interface. http:\/\/openjdk.java.net\/projects\/cvmi\/"},{"key":"e_1_2_1_32_1","unstructured":"Oracle. 2012g. OpenJDK: Graal project. http:\/\/openjdk.java.net\/projects\/graal\/  Oracle. 2012g. OpenJDK: Graal project. http:\/\/openjdk.java.net\/projects\/graal\/"},{"key":"e_1_2_1_33_1","doi-asserted-by":"publisher","DOI":"10.1016\/j.scico.2004.08.007"},{"key":"e_1_2_1_34_1","doi-asserted-by":"publisher","DOI":"10.1145\/1176617.1176753"},{"key":"e_1_2_1_35_1","unstructured":"Rogers I. and Grove D. 2009. The strength of metacircular virtual machines: Jikes RVM. In Beautiful Architecture D. Spinellis and G. Gousios Eds. O'Reilly Chapter 10.  Rogers I. and Grove D. 2009. The strength of metacircular virtual machines: Jikes RVM. In Beautiful Architecture D. Spinellis and G. Gousios Eds. O'Reilly Chapter 10."},{"key":"e_1_2_1_36_1","volume-title":"Proceedings of the Symposium on Java Virtual Machine Research and Technology. USENIX Association, 16--16","author":"Russell K."},{"key":"e_1_2_1_37_1","doi-asserted-by":"publisher","DOI":"10.1145\/1167473.1167496"},{"key":"e_1_2_1_38_1","unstructured":"SPEC 2008. SPECjvm2008. http:\/\/www.spec.org\/jvm2008\/  SPEC 2008. SPECjvm2008. http:\/\/www.spec.org\/jvm2008\/"},{"key":"e_1_2_1_39_1","doi-asserted-by":"publisher","DOI":"10.1145\/1735997.1736005"},{"key":"e_1_2_1_40_1","doi-asserted-by":"publisher","DOI":"10.1145\/1094855.1094865"},{"key":"e_1_2_1_41_1","doi-asserted-by":"publisher","DOI":"10.1145\/2162049.2162073"},{"key":"e_1_2_1_42_1","unstructured":"Wirth N. and Gutknecht J. 1992. Project Oberon. Addison-Wesley.  Wirth N. and Gutknecht J. 1992. Project Oberon. Addison-Wesley."},{"key":"e_1_2_1_43_1","unstructured":"Wright G. McGachey P. Gunadi E. and Wolczko M. 2006. Introspection of a Java#8482; virtual machine under simulation. Tech. rep. SMLI TR-2006-159 Sun Microsystems Labs.   Wright G. McGachey P. Gunadi E. and Wolczko M. 2006. Introspection of a Java#8482; virtual machine under simulation. Tech. rep. SMLI TR-2006-159 Sun Microsystems Labs."}],"container-title":["ACM Transactions on Architecture and Code Optimization"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2400682.2400689","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/2400682.2400689","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T09:35:01Z","timestamp":1750239301000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/2400682.2400689"}},"subtitle":["An approachable virtual machine for, and in, java"],"short-title":[],"issued":{"date-parts":[[2013,1]]},"references-count":43,"journal-issue":{"issue":"4","published-print":{"date-parts":[[2013,1]]}},"alternative-id":["10.1145\/2400682.2400689"],"URL":"https:\/\/doi.org\/10.1145\/2400682.2400689","relation":{},"ISSN":["1544-3566","1544-3973"],"issn-type":[{"value":"1544-3566","type":"print"},{"value":"1544-3973","type":"electronic"}],"subject":[],"published":{"date-parts":[[2013,1]]},"assertion":[{"value":"2012-05-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2012-09-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2013-01-20","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}