其他分享
首页 > 其他分享> > JVM结构学习

JVM结构学习

作者:互联网

JDK、JRE、JVM:依次为开发包、运行环境、虚拟机。JDK是完整开发包,包括编译和运行环境以及其他。JRE包括JVM还有其他运行必须的库等。

JVM功能:一段完整的java代码,首先会经过编译部分,词法分析、语法分析、语义分析等一系列检查通过后,并非直接通过后端作用在硬件上,而是被生成 JVM能够理解的.class文件,这个class文件中存放诸多信息,例如是基本类型、引用类型、类、方法、符号引用(提供链接)等等。接下来是JVM登场,JVM的角色是后端输出的硬件代理人,拥有自己的指令集,以及内存调度等,提供了一个虚拟的环境供 class字节码文件在上面运行。

JVM栈:JVM并不限制线程模型的类型,用户级线程或是内核线程都是可以的,在每个线程创建的时候,JVM会为其创建一个独立的线程栈,它存储的是Frame帧。也就是说首先会为main函数创建它独立的虚拟机栈,mian函数帧入栈,在main中调用function1的时候,function1帧入栈,此时活动点由main函数帧改为function1帧,也就是function1帧中保存的局部变量和部分结果被active,返回main函数也是一样,function1帧被销毁,main函数帧为当前帧,main函数帧中局部变量和保存的部分结果被active。

标签:function1,函数,学习,线程,JVM,main,class,结构
来源: https://blog.csdn.net/zzzfeiyu/article/details/101096968