从这一篇文章开始,我会系统性的总结所学到的jvm知识;
1、什么是JVM?
Java Virtual Machine - java 程序的运行环境(java 二进制字节码的运行环境)
2、JVM有什么好处?
1、一次编写,到处运行
2、自动内存管理,垃圾回收功能
3、数组下标越界检查
4、多态
3、JVM内存结构图
这篇文章主要讲解程序计数器(寄存器)
4、寄存器的作用:是记住下一条jvm指令的执行地址;
特点:(1)是线程私有的 (2)不会存在内存溢出
上面一张图是二进制文件被运行的过程,我们的二进制文件并不是直接被cup执行的,而是有一个解释器来将每一行二进制指令解释成机器码,然后cpu来执行机器码才是真正的运行程序;
在上面的执行流程中解析器需要从寄存器中获取下一行需要解析的指令位置,所以寄存器的作用就是:是记住下一条jvm指令的执行地址
在多线程运行环境中,寄存器的作用尤为重要,应为每个线程都会争抢CPU的执行权,当一个线程获取到CUP的执行权的时候就会执行代码,如果代码还没有执行完,cpu的时间片就用完了,那么寄存器就会保存下一次该线程(再次获取到cpu执行权)运行的指令地址,从而保证了线程执行的连续性,和一致性;
,