jvm执行java大致采用过程_java之Jvm学习--JVM运行机制

JVM启动流程

jvm执行java大致采用过程_java之Jvm学习--JVM运行机制_第1张图片

1.java虚拟机启动的命令是通过java +xxx(类名,这个类中要有main方法)或者javaw启动的。

2.执行命令后,系统第一步做的就是装载配置,会在当前路径中寻找jvm的config配置文件。

3.找到jvm的config配置文件之后会去定位jvm.dll这个文件。这个文件就是java虚拟机的主要实现。

4.当找到匹配当前版本的jvm.dll文件后,就会使用这个dll去初始化jvm虚拟机。获得相关的接口。之后找到main方法开始运行。

上面这个过程的描述虽然比较简单,但是jvm的启动流程基本都已经涵盖在里面了。

jvm的基本结构

jvm执行java大致采用过程_java之Jvm学习--JVM运行机制_第2张图片

类加载器子系统就是通常我们所说的ClassLoader类加载器,首先我们会通过ClassLoader加载到jvm的内存中去,本地方法区主要就是native的方法调用,这个我们不前不做关心,

pc寄存器

1.每个线程拥有一个pc寄存器。

jvm会为每一个线程分配一个pc寄存器,这个pc寄存器总是会指向下一个指令的地址。这样程序在执行过程中pc寄存器总是会知道下一步会做什么。在执行本地方法的时候,

你可能感兴趣的:(jvm执行java大致采用过程)