• Class Loader :- Loads the class files. Sub systems are
LOADER: --> Has 1)Bootstrap class loader - Loads rt.jar(runtime) essential for running jvm Its written in native language 2)Extension Class Loader - Loads jar files from ext folder of jdk (external jars can be placed in it) 3)Application class loader - Loads class files from CLASSPATH LINKER : Validates the byte code for compatibility Allocates memory for variables and adds default value INITIALIZATION : Variables are initialised and Static blocks are executed
• Runtime Data Access :
Method Area : Loader loads .class files here and stored in a class structure. Identifiable through address Heap Area : Stack Area : Program Control Register : Stores the address of each instruction and updates with new when completed. Native Method stack : for native lang methods • Execution Engine : Has Interpreter , JIT Compiler, Garbage Collector • Native Method Library : Lib for native languages • JNI - Java Native Interface -->Interface to run native codes via native method lib