|
Abstract : |
Abstract. The Java Virtual Machine (JavaVM) has contributed greatly to Java's success because it provides a common intermediate format which can be shared across the Internet. Unfortunately, the JavaVM has been optimized for an interpreted model, resulting in inferior performance because its stack-based execution model cannot exploit instructionlevel parallelism. The inherent serialization of the stack execution model can be addressed either by using compilation techniques or by hardware. In this article, we review the different JavaVM implementation methods based on our experiences with the implementation of the CACAO just-in-time compiler. For comparison, we have also investigated different hardware architectures for the direct implementation of the JavaVM. 1, |