This chapter allows readers to look under the hood of JVM and learn about its processes. The structure and behavior of JVM is more complex than just an executor of a sequence of instructions according to the coded logic. JVM finds and loads into the memory the .class files requested by the application, verifies them, interprets the bytecodes (translates them into platform-specific binary code), and passes the resulting machine code to the central processor (or processors) for execution, using several service threads in addition to the application threads. One of the service threads, called garbage collection, performs the important mission of releasing the memory from unused objects.
In this chapter, we will cover the following topics:
- What are JVM processes?
- JVM architecture
- Garbage collection
- Threads
- Exercise – Monitoring JVM while...