Java Virtual Machine


1. Virtual Machine
2. Types of Virtual Machines
i) Hardware based VM
ii) Application based VM
3. Basic architecture diagram of JVM

4. Class Loader Subsystem
i) Loading
ii) Linking
iii) Initialization
5. Types of class Loaders
i) Bootstrap Class Loader
ii) Extension Class Loader
iii) Application Class Loader
6. How Java class Loaders work?
7. Need of customized class loader
8. Pseudo code to define customized class loader

9. Various Memory Area of JVM
i) Method area
ii) Heap Area
iii) Stack Area
iv) PC Register Area
v) Native Method Stack
10. Program to display Heap Memory statistics?
i) maxMemory()
ii) totalMemory()
iii) freeMemory()
11. How to set maximum and minimum Heap sizes?

12. Execution Engine
i) Interpreter
ii) JIT compiler
13. Java Native Interface
14. Complete architecture of JVM
15. Class File Structure
i) Magic number
ii) Minor version
iii) Major version