Java Virtual Machine Educational Tools
Tomaž Dobravec · 2019
Java virtual machine is becoming an industry standard for running platform-independent programs. It is available for a wide range of different platforms - from very simple embedded systems to large sophisticated computers. In spite of the fact that JVM supports efficient execution of complex programs with performances comparable to those achieved by non-virtualised programs, the JVM architecture is quite simple and as such it has very high educative value. The details about the JVM internal mechanisms, memory management procedures and bytecode execution processes can help software and hardware developers to understand the operation and the structure of the computer at the lowest level. For system developers, this knowledge can be used as a good example of a fast and efficient working environment, while the programmers can use it to write optimized programs that are in line with the JVM capabilities. In this paper, we present some behind-the-scenes details about JVM. We list selected tools that can be used in the production as well as in the educational process to learn about and to take ad-vantages of JVM as an efficient working environment. We present programs like javap, Bytecode Visualizer, and PyJVMGui, with some verbose test cases.