JVM内存模型

来源:互联网 发布:文华财经编程教程 编辑:程序博客网 时间:2024/06/02 04:06

先磨磨肩擦擦掌,小二很早就听说jvm的内存很是奇特,今日一看果然不同凡响。下面且听小二一一道来。

一、.jvm可以看做是对操作系统的模拟,看过《操作系统》或者《深入理解操作系统》这本书的人都知道(虽然我没有看完),操作系统博大精深,jvm想要很好的模拟出操作系统实属不易
二、一次编译到处运行,虽然现在看来很普通,但在当时可谓是创时代之举。当时的设计者既然都考虑到让jvm仅仅作为一个平台,支持更多的语言。我觉得这在我们开发程序时是很有借鉴意义的,解耦性、扩展性
好了,下面上干货!
三、.jvm内存模型
这里写图片描述
1.程序计数器PC 线程私有
跟操作系统的PC寄存器有点像,不过jvm中的PC是软件模拟的,并且功能远远比操作系统的PC(硬件)强大的多。像分支、循环、跳转等都需要依赖这个计数器来完成。

2.JVM内存模型之java虚拟机栈

3.JVM内存模型之方法区

4.JVM内存模型之堆

5.JVM内存模型之直接内存

6.JVM内存模型之运行时常量池