JVM虚拟机
文章平均质量分 71
dyf20081124
这个作者很懒,什么都没留下…
展开
-
深入理解JVM(二)------Java代码执行机制
Java代码编译是由Java源码编译器来完成,流程图如下所示:Java字节码的执行是由JVM执行引擎来完成,流程图如下所示: Java代码编译和执行的整个过程包含了以下三个重要的机制:Java源码编译机制类加载机制类执行机制Java源码编译机制Java 源码编译由以下三个过程组成:分析和输入到符号表注解处理语义分析和生成cla转载 2014-04-17 15:50:13 · 361 阅读 · 0 评论 -
深入理解JVM(一)------基本结构
从Java平台的逻辑结构上来看,我们可以从下图来了解JVM:从上图能清晰看到Java平台包含的各个逻辑模块,也能了解到JDK与JRE的区别对于JVM自身的物理结构,我们可以从下图鸟瞰一下:对于JVM的学习,在我看来这么几个部分最重要:Java代码的编译及执行机制JVM内存管理及垃圾回收机制转载 2014-04-17 15:47:33 · 370 阅读 · 0 评论 -
深入理解JVM(三)------内存管理和垃圾回收
JVM内存组成结构JVM栈由堆、栈、本地方法栈、方法区等部分组成,结构图如下所示:1)堆所有通过new创建的对象的内存都在堆中分配,其大小可以通过-Xmx和-Xms来控制。堆被划分为新生代和旧生代,新生代又被进一步划分为Eden和Survivor区,最后Survivor由From Space和To Space组成,结构图如下所示:新生代。新建的对象都转载 2014-04-17 15:51:50 · 273 阅读 · 0 评论 -
JVM学习笔记(四)------内存调优
应堆内存的真实占用情况,因为GC过后这个值是不会变化的,因此内存调优的时候要更多地使用JDK提供的内存查看工具,比如JConsole和Java VisualVM。对JVM内存的系统级的调优主要的目的是减少GC的频率和Full GC的次数,过多的GC和Full GC是会占用很多的系统资源(主要是CPU),影响系统的吞吐量。特别要关注Full GC,因为它会对整个堆进行整理,导致Full GC转载 2014-04-17 15:53:21 · 392 阅读 · 0 评论 -
JVM内存管理及垃圾回收
JVM内存被分成了3个部分:年轻代(Young Generation)年老代(Old Generation)永久代(Permanent Generation)年轻代又分成3个部分,一个eden区和两个相同的survior区。刚开始创建的对象都是放置在eden区的。分成这样3个部分,主要是为了生命周期短的对象尽量留在年轻带。当eden区申请不到空间的时候,进行mi转载 2014-04-17 15:54:51 · 315 阅读 · 0 评论 -
jvm内存结构
一、jvm内存结构程序计数器(Program Counter Register)、JVM虚拟机栈(JVM Stacks)、本地方法栈(Native Method Stacks)、堆(Heap)、方法区(Method Area)(1)PCR跟随线程生命周期,记录当前执行到的.class字节码行数,用于多线程操作(2)JVM Stacks跟随线程生命周期,在方法执行中存储数转载 2014-05-04 15:49:52 · 326 阅读 · 0 评论 -
基于JVM(内存)的优化
一切基于JVM(内存)的优化1 32位操作系统与64位操作系统中JVM的对比我们一般的开发人员,基本用的是都是32位的Windows系统,这就导致了一个严重的问题即:32位windows系统对内存限制,下面先来看一个比较的表格:操作系统操作系统位数内存限制解决办法Winxp转载 2014-07-15 09:23:39 · 236 阅读 · 0 评论 -
Java内存溢出的详细解决方案
本文介绍了Java内存溢出的详细解决方案。本文总结内存溢出主要有两种情况,而JVM经常调用垃圾回收器解决内存堆不足的问题,但是有时仍会有内存不足的错误。作者分析了JVM内存区域组成及JVM设置虚拟内存的方式,从而给出了一系列解决方案。AD: 2014WOT全球软件技术峰会北京站 课程视频发布 一、内存溢出类型1、java.lang.OutOfMe转载 2014-10-27 15:24:30 · 260 阅读 · 0 评论