一、什么是JVM?
Java虚拟机是一个虚构出来的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
二、JVM系统结构
JVM的内部体系结构分为三部分
(1)类装载器子系统
主要用于装载class文件
(2)执行引擎
主要用于执行字节码,或者执行本地方法
(3)运行时数据区
分为:方法区,堆,java栈,PC寄存器,本地方法栈
JVM的生命周期
(1)JVM实例的创建
启动一个Java程序(main()作为入口),就会创建一个JVM实例.
JVM对应了一个独立运行的Java程序,是进程级别的.
(2)JVM实例的运行
main()作为程序初始线程的起点,任何其他线程均由该线程启动.main()属于非守护线程,守护线程通常由JVM自己使用,Java程序也可创建守护线程.
(3)JVM实例的销毁
当程序中的所有非守护线程都终止时,JVM才退出;若安全管理器允许,程序也可以使用Runtime类或者System.exit()来退出.
posted on
浙公网安备 33010602011771号