Deep understanding of the JVM