深入学习JVM之三运行机制下篇

这篇文章继续着上文的JVM运行机制,继续来学习。

Java栈-操作数栈
Java没有寄存器,所有参数传递使用操作数栈,如图所示

深入学习JVM之三运行机制下篇

Java栈区,方法区,堆区的详解如图

深入学习JVM之三运行机制下篇

Java内存模型
内存模型
a.每一个线程有一个工作内存和主存独立
b.工作内存存放主存中变量的值的拷贝

当数据从主存复制到工作存储时,必须出现两个动作:第一,由主存执行的读(read)操作;第二,由工作内存执行相应的load操作,当数据从工作内存拷贝到主内存时,也出现两个操作:第一个,由工作内存执行的存储(store)操作;第二,由主内存执行相应的写(write)操作。如下图

这里每一个操作等同于数据库里操作的原子性,即执行期间不会被中断
深入学习JVM之三运行机制下篇

这篇博客图片有点多,不过一张图胜过千言万语。哈哈