jvm
漠北七号
这个作者很懒,什么都没留下…
展开
-
jvm内存结构及作用
简图: 复杂图: 类加载器局部图: 类加载器: 类加载器负责从内存中或者网络中加载class文件,class文件开头是以魔数开头 cafebaby Calssloader只负责加载 class文件,至于是否可以运行是需要看Execution Engine(执行引擎)来决定的 加载的类信息存放于一块被称为方法区的内存空间,出货了类的信息外,方法区还会存放运行时常量池信息,可能还包括字符串和数据常量 类加载器ClassLoader角色: 1. class fil...原创 2021-08-29 09:26:00 · 82 阅读 · 0 评论 -
双亲委派机制
双亲委派机制: java虚拟机对class文件采用的是按需加载的方式,也就是说当需要使用该类时才会将它的class文件加载到内存中生成class对象。而且加载某个类的class文件时,java虚拟机采用的是双亲委派模式,即把请求交给父类处理,它是一种任务委派模式 引导类加载器: 也被称为启动类加载器Bootstrap ClassLoader 这个类加载器是用C/C++语言实现的,嵌套在JVM内部,他用来加载Java的核心库(JAVA_HOME/jre/lib/rt.jar、resources.ja..原创 2021-08-16 14:07:45 · 46 阅读 · 0 评论 -
jvm的架构模型
java编译器输入的指令流基本上是一种基于栈的指令集架构,另一种指令集架构是基于寄存器的指令集架构。 两种架构之间的区别: 基于栈架构的特点: 1. 设计和实现更简单,适用于资源受限的系统 2. 避开了寄存器的分配难题,使用零地址指令方式分配 3. 指令流中的指令大部分是零地址指令,其执行过程依赖于操作栈,指令集更小,编译器容易实现 4. 不需要看硬件支持,可移植性更好,更易实现跨平台 5. 一个字节文件,8位,指令更多 基于寄存器架构的特点: 1. 典型的应用是x86的二进制指令集,比如原创 2021-08-11 16:03:56 · 88 阅读 · 0 评论