栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JVM内存模型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JVM内存模型

JVM是JAVA语言可以在多环境下运行的根本,探究JVM机制能让我们更深入的了解这门语言是如何运行的

JVM内存模型总览


之后给大家介绍各个部分的大概作用

类加载器(Classloader)

作用:将Class文件加载进JVM内存中
详细可看JAVA类加载机制

栈(JVM Stack)

作用:栈是用来程序运行的方法的容器,一个线程有一个栈,每一个方法对应一个栈帧,栈帧中存放着这个方法运行时的各类数据。
详细可看JAVA栈与栈帧

程序计数器(The pc Register)

程序计数器中存放着程序的运行位置,是服务于多线程的,作用类似于断点记录。其计数修改由字节码执行引擎负责。每个线程都会被分配一个。

堆(Heap)

作用:存放new出来的对象,其他地方存的都是对象在堆内的地址
详细可看堆与CG

方法区(Method Area)

JDK1.8前叫持久栈,1.8后叫元空间,里面存的是常量、静态变量和类信息等

本地方法栈(Native Method Stacks)

本地方法栈与虚拟机栈作用非常相似,其区别只是虚拟机栈为虚拟机执行Java方法(也就是字节码)服务,而本地方法栈则是为虚拟机使用到的本地(Native) 方法服务,即非java方法一般是使用C语言进行实现。
之所以调用本地方法,是因为java代码有一定的限制,java有时候不能和操作系统底层交互,所以就需要使用C或者C++ 等一些别的语言和操作系统进行交互,然后由java代码调用这些封装好的本地方法接口间接和操作系统进行交互。

以上是笔者结合自己的理解所写,如有错误欢迎指出,望共同进步,peace~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/759992.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号