
JVM
iteye_1575
这个作者很懒,什么都没留下…
展开
-
jvm学习笔记(一)------------基本结构
从Java平台的逻辑结构上来看,我们可以从下图来了解JVM: 从上图能清晰看到Java平台包含的各个逻辑模块,也能了解到JDK与JRE的区别 对于JVM自身的物理结构,我们可以从下图鸟瞰一下: 对于JVM的学习,在我看来这么几个部分最重要: Java代码编译和执行的整个过程 JVM内存管理及垃圾回收机制 下面将这两个部分进行详细学习 ...原创 2015-08-06 09:56:15 · 73 阅读 · 0 评论 -
JVM学习笔记(二)------------JAVA代码编译和执行的整个过程
Java代码编译是由Java源码编译器来完成,流程图如下所示: Java字节码的执行是由JVM执行引擎来完成,流程图如下所示: Java代码编译和执行的整个过程包含了以下三个重要的机制: Java源码编译机制 类加载机制 类执行机制 Java源码编译机制 Java 源码编译由以下三个过程组成: 分析和输入到符号表 注解处理 语义分析和生成class文件 ...原创 2015-08-14 15:42:12 · 73 阅读 · 0 评论 -
JVM学习笔记(三)------内存管理和垃圾回收
JVM内存组成结构 JVM栈由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示: 1)堆 所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由From Space和To Space组成,结构图如下所示: 新生代。新建的对象都是用新生代分配内存...原创 2015-08-14 15:42:26 · 77 阅读 · 0 评论 -
JVM学习笔记(四)------------内存调优
首先需要注意的是在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存,这个数值不能准确的反应堆内存的真实占用情况,因为GC过后这个值是不会变化的,因此内存调优的时候要更多地使用JDK提供的内存查看工具,比如JConsole和Java VisualVM。 对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数,过多的GC和Full GC是会占用很多的系统资源...原创 2015-09-23 10:20:50 · 96 阅读 · 0 评论 -
JVM 运行时数据区简介及堆与栈的区别
1、JVM运行时数据区分类 程序计数器 (Program Counter (PC) Register) JVM栈 (Java Virtual Machine Stacks) 堆内存 (Heap Memory) 方法区 (Method Area) 运行时常量池 (Run-time Constant Pool) 本地方法栈 (Native M...原创 2015-11-04 11:20:25 · 194 阅读 · 0 评论