JVM基本知识——运行空间
JVM(Java Virtual Machine)即Java虚拟机,是负责读取java字节码,并在实际的硬件环境中运行。
JVM可以分为三部分:类装载器(ClassLoader)子系统、内存空间、执行引擎
内存空间(运行时数据区)
方法区和堆是线程共享的
本地方法栈:保存执行方法信息,执行java方法是使用栈,native方法使用本地方法栈
方法区:存储被虚拟机加载的类信息、常量、静态变量。1.7的永久代和1.8的元空间都是方法区的实现
虚拟机栈:存储局部变量表,线程私有,线程每执行一个方法就会在栈中创建一个栈阵,调用方法执行入栈、方法返回执行出栈
堆:堆是内存最大的一部分,存储着所有对象的实例,为对象分配内存。是垃圾回收的主要区域。堆在物理存储上是不连续的,但是在逻辑上是连续的
程序计数器:记录方法执行的jvm指令地址(native方法则为空,因为用c,不需要编译),
原文地址:https://blog.csdn.net/weixin_56392989/article/details/140357085
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!