Affiliation:
1. IBM T.J. Watson Research Center, PO box 218, Yorktown Heights, NY
2. Hewlett Packard Laboratories, 1501 Page Mill Road, Palo AIto, CA
Abstract
Jalapeño is a virtual machine for Java™ servers written in Java.
A running Java program involves four layers of functionality: the user code, the virtual-machine, the operating system, and the hardware. By drawing the Java / non-Java boundary below the virtual machine rather than above it, Jalapeño reduces the boundary-crossing overhead and opens up more opportunities for optimization.
To get Jalapeño started, a
boot image
of a working Jalapeño virtual machine is concocted and written to a file. Later, this file can be loaded into memory and executed. Because the boot image consists entirely of Java objects, it can be concocted by a Java program that runs in
any
JVM. This program uses reflection to convert the boot image into Jalapeño's object format.
A special MAGIC class allows unsafe casts and direct access to the hardware. Methods of this class are recognized by Jalapeño's three compilers, which ignore their bytecodes and emit special-purpose machine code. User code will not be allowed to call MAGIC methods so Java's integrity is preserved.
A small non-Java program is used to start up a boot image and as an interface to the operating system.
Java's programming features — object orientation, type safety, automatic memory management — greatly facilitated development of Jalapeño. However, we also discovered some of the language's limitations.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Cited by
58 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Don’t Trust Your Profiler: An Empirical Study on the Precision and Accuracy of Java Profilers (Poster Abstract);Proceedings of the 20th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes;2023-10-19
2. Don’t Trust Your Profiler: An Empirical Study on the Precision and Accuracy of Java Profilers;Proceedings of the 20th ACM SIGPLAN International Conference on Managed Programming Languages and Runtimes;2023-10-19
3. Vincent: Green hot methods in the JVM;Science of Computer Programming;2023-08
4. Threaded Code Generation with a Meta-Tracing JIT Compiler.;The Journal of Object Technology;2022
5. Vincent: Green Hot Methods in the Jvm;SSRN Electronic Journal;2022