Outline
- Introduction: what is a VM?
- History of Java
- Detailed JVM architecture: specifications, byte code, memory model, class loader model, garbage collection, JIT, agents, monitoring standards
- Debugging
- Performance analysis tuning: types and patterns of garbage collection, JMX and monitoring tools, thread dump collection and analysis tools, profiling tools, memory analysis tools
- Lab work will include working with these tools: VisualVM, Censum, YourKit, Eclipse MAT and others