JVM之概述
## 1.JVM是什么
JVM(java Virtual Machine)也就是java虚拟机。
2.虚拟机是什么
虚拟机顾名思义就是一台虚拟的计算机,是一款软件,用来执行一系列的虚拟计算机指令,虚拟机又分为系统虚拟机和程序虚拟机。
VMware就属于系统虚拟机,是对于物理计算机的仿真。,提供了可运行完整操作系统的软件平台。
而JVM是程序虚拟机,它专门为执行某个单位计算机程序而设计,java虚拟机中的指令我们称之为java字节码指令,JVM把java字节码指令转换为物理计算机的机器码指令再在计算机上运行。
3.JVM作用
java虚拟机把java代码转换为java字节码指令,再通过不同系统的JVM转换为对应系统的机器码指令(Linux和windows的JVM有所不同),可实现跨平台使用。
特点:
1.一次编译到处运行
2.自动内存管理
3.自动垃圾回收
4.JVM位置
’
5.JVM的组成
JVM由类加载器,运行时数据区,执行引擎,本地方法接口组成
6.JVM的架构模型
java编译器输入的指令流基本上是一种基于栈的指令集架构,另一种指令集架构是基于寄存器的指令集架构
区别
1.栈式
设计和实现更简单,适用于资源受限制的系统
使用零地址指令分配方式,执行过程愈来愈操作栈,指令集小,编译器易于实现
不需要硬件支持,可移植性好,更好实现跨平台性**(java对于不同的操作系统都有不同的jvm,有利于实现跨平台性)**
2.寄存器式
指令完全依赖于硬件,可移植性差
性能优秀,执行更高效
指令少