JVM
文章平均质量分 83
圈圈杜
踏踏实实学点东西
展开
-
JVM学习笔记四 :Class类文件结构
魔数u4+版本号u4(次版本号u2,主版本号u2)+常量池(常量池容量计数器u2,(类型标志位u1+不同类型常量的结构))+访问标志u2+类索引u2+父类索引u2+接口索引集合u2+字段表集合(容量计数器u2,标志位u2,简单名称u2,描述符u2,属性表容量计数器u2,(不同属性表结构))+方法表集合(访问标志u2,名称索引u2,描述符索引u2,属性表容量计数器u2原创 2014-12-02 19:46:05 · 491 阅读 · 0 评论 -
JVM学习笔记一 :垃圾收集器与内存分配
GC(Garbage Collection)需要完成的三件事:1.哪些内存需要回收? 已死对象所占内存需要回收。2.什么时候回收? 内存不够用的时候回收。垃圾回收分为Minor GC和(Major GC或者Full GC),即Minor GC为新生代垃圾回收,Full GC为老年代垃圾回收。Minor GC触发条件,Full GC原创 2016-03-11 17:19:49 · 481 阅读 · 0 评论 -
JVM学习笔记三:JVM参数的含义
标准参数(-),所有JVM都必须支持这些参数的功能,而且向后兼容;例如:-client——设置JVM使用Client模式,特点是启动速度比较快,但运行时性能和内存管理效率不高,通常用于客户端应用程序或开发调试;在32位环境下直接运行Java程序默认启用该模式。-server——设置JVM使Server模式,特点是启动速度比较慢,但运行时性能和内存管理效率很高,适用于生产环境。在具有64位能转载 2016-03-11 17:21:52 · 583 阅读 · 0 评论 -
JVM学习笔记五 :虚拟机类加载器
虚拟机的类加载机制:虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换 解析和初始化,最终形成可以被虚拟机直接使用的Java类型。一、类加载过程:1、加载 什么时候加载? 虚拟机中并没有进行强制约束,这点可以交给虚拟机的具体实现自由把握。 加载做了什么?(需要完成三件事) 1)通过一个类的全限定名来获取定义原创 2016-03-11 17:25:44 · 363 阅读 · 0 评论 -
JVM学习笔记二 :垃圾收集的过程分析Eden->Survivor->Tenured
内存申请过程JVM会试图为相关Java对象在Eden中初始化一块内存区域;当Eden空间足够时,内存申请结束。否则到下一步;JVM试图释放在Eden中所有不活跃的对象(minor collection),释放后若Eden空间仍然不足以放入新对象,则试图将部分Eden中活跃对象放入Survivor区;Survivor区被用来作为Eden及old的中间交换区域,当old区空间足转载 2016-03-11 17:27:34 · 5549 阅读 · 0 评论 -
JVM学习笔记六 :虚拟机字节码执行引擎
一、执行引擎是什么? 执行引擎是Java虚拟机最核心的组成部分之一。对于物理机来说执行引擎是建立在处理器、硬件、指令集和操作系统层面上的,而虚拟机的执行引擎是自己实现的,他可以自行定义指令集和执行引擎的结构体系,并且执行那些不能够被硬件直接支持的指令集格式。 所有的Java虚拟机的执行引擎都是一致的:输入的是字节码文件,处理过程是字节码解析的等效过程,输出的是执转载 2016-03-11 22:22:19 · 513 阅读 · 0 评论