JDK
JVM: run Java regardless of OS & supply GC(garbage collection) function.
JRE: JVM gets environments to execute .class File.
Program Execution Process
Fetch instructions from Memory to CPU.
General OS program Execution Process
Source code — (compiler) → Assembly File — (Assembler) →Binary File
Java Program Execution Process
.java — (compiler) → .class[java Byte Code] — (Class Loader) →JVM Loaded File — (Execution Engine) →Binary File[for each OS]
Etc
Runtime Data Area: assigned Memory Area from OS.
Method Area: Information about class, variable, method, static, prime number. — shared by all process
Heap Area: Instance and the Object are stored in this area. — shared by all process, GC issue
Stack Area: all variables in the method. — in each process
PC register Area: store the JVM instruction address. — in each process
Native method stack: Other language’s method