JVM是Java Virtual Machine(Java虛擬機)的縮寫,JVM是一種用於計算設備的規範,它是一個虛構出來的計算機,是經過在實際的計算機上仿真模擬各類計算機功能來實現的。java
JVM是java的核心和基礎,在java編譯器和os平臺之間的虛擬處理器。它是一種基於下層的操做系統和硬件平臺並利用軟件方法來實現的抽象的計算機,能夠在上面執行java的字節碼程序。spa
java編譯器只需面向JVM,生成JVM能理解的代碼或字節碼文件。Java源文件經編譯器,編譯成字節碼程序,經過JVM將每一條指令翻譯成不一樣平臺機器碼,經過特定平臺運行。操作系統
JVM執行程序的過程 :翻譯
I.加載.class文件blog
II.管理並分配內存接口
III.執行垃圾收集生命週期
JRE(java運行時環境)包含JVM的java程序的運行環境進程
JVM是Java程序運行的容器,可是他同時也是操做系統的一個進程,所以他也有他本身的運行的生命週期,也有本身的代碼和數據空間。內存
JVM在整個jdk中處於最底層,負責與操做系統的交互,用來屏蔽操做系統環境,提供一個完整的Java運行環境,所以也叫虛擬計算機.操做系統裝入JVM是經過jdk中Java.exe來完成,經過下面4步來完成JVM環境。編譯器
1.建立JVM裝載環境和配置
2.裝載JVM.dll
3.初始化JVM.dll並掛接到JNIENV(JNI調用接口)實例
4.調用JNIEnv實例裝載並處理class類。