You've written applications for the JVM, using various frameworks and
maybe even various languages. You understand how to rig up the
CLASSPATH, get .class files to load, compile source, and set up an
IDE. But you've always wanted a better understanding of the plumbing
underneath. How does JVM bytecode work? What happens to bytecode after
you hand it off to the JVM?