jvm 基本原理
文章平均质量分 90
各种西瓜
这个作者很懒,什么都没留下…
展开
-
浅析JVM 第一篇(JVM执行流程)
java程序的运行流程众所周知所有的Java程序代码必须保存在.java的文件之中,这些称为源代码。而这些源代码并不能够直接执行,必须使用javac.exe命令将其编译为.class文件,而后利用java.exe命令在JVM进程之中解释此程序。 实际上当JVM将所需要的*.class文件加载到JVM进程之中,那么这个过程就需要有一个类加载器(ClassLoader),有了类加载器的好处在于:可以随意原创 2017-03-13 16:39:04 · 5149 阅读 · 2 评论 -
浅析JVM 第二篇(JVM内存模型和垃圾回收)
Java具备良好的垃圾收集特性,也就是GC是整个Java之中的最重要的安全保证,它可以保证即使再蠢的开发者也能够写合理的代码来。整个JVM中的GC的处理机制:对不需要的对象进行标记,而后进行清除.java堆内存模型JDK1.7以前JDK1.8 JDK 1.8之后将最初的永久代内存空间取消了为了将HotSpot与JRockit两个虚拟机标准联合为一个.新生代:新的对象和没有达到一定“年龄”的对原创 2017-03-13 21:21:53 · 786 阅读 · 1 评论 -
浅析JVM 第三篇(堆内存参数调整)
堆内存调整参数(调优的关键)通过以上两篇的文章我们可以发现每一个区域都有一个可变的伸缩区,当我们的内存空间不足的时候,会在可变的范围内扩大内存空间,当我们的内存空间变得不紧张的时候我们再释放可变空间。在堆内存的调优之中我们要特别注意两个参数-Xms初始化内存分配大小,默认为物理内存的1/64,-Xmx 最大的分配内存默认为物理内存的1/4。 以本人8G电脑来说:class GCDemo原创 2017-03-14 20:25:33 · 888 阅读 · 0 评论 -
浅析JVM 第四篇(java的垃圾收集策略)
可用的GC收集方式年轻代GC收集策略: 串行GC(Serial Copying) 并行回收GC(Parallel Scavenge) 并行GC(ParNew)老年代GC收集策略: 串行GC(Serial MSC) 并行GC(Parallel Msc) 并发GC(CMC) 使用并行的操作可以调整cpu数量测试: 默认GC收集策略 可以看出年轻代使用的并行回收GC,原创 2017-03-14 22:38:10 · 413 阅读 · 0 评论 -
JVM类加载机制
class类文件结构任何一个Class文件都对应着唯一 一个类或者接口的定义信息,但是类或者接口不一定都定义在文件里。类或者接口可以直接通过类加载器生成。Class文件是一组以8位字节为基础单位的二进制流,按照严格的顺序排列在Class文件里。Class文件格式采用一种类似于C语言结构体的伪结构来存储数据,这种伪结构只有两种数据类型:无符号和表无符号属于基本数据类型,以u1,u2,u4,u8,代表翻译 2017-05-22 21:49:35 · 311 阅读 · 0 评论