Java-JVM
iteye_4550
这个作者很懒,什么都没留下…
展开
-
JVM学习笔记之GC
研究了一段时间的JVM,主要参考了《深入java虚拟机》和《java虚拟机规范》,决定写点东西总结一下。 先说说GC回收。 首先,垃圾回收由JVM的一个幽灵线程实现,它是不连续运行,就是说有间隔,并且优先级很低,人工基本上不直接干涉的。 其次,垃圾回收的作用是回收不使用的对象,释放并整理内存空间。 这里先总结下类的加载过程。 ...2011-08-25 09:44:11 · 88 阅读 · 0 评论 -
JVM学习笔记之方法调用
最近有空,继续写写jvm的学习笔记。这次写写java中的方法调用过程。 程序在有限的资源下运行当然是越快越好,这就离不开优化。一般来说都是业务逻辑优化(这也是最有效的),说到程序的运行的优化就不得不牵扯到JVM底层的字节码了。查看字节码的方法是javap -c **.class,这里建议 javap -c **.class > **.txt 来保存成文本文件方便用工具查看。...2011-08-25 09:46:15 · 133 阅读 · 0 评论 -
JVM学习笔记之方法运行
之前写了JVM对方法的调用过程,这里结合锁机制讲讲方法运行的过程。 首先方法运行是在JVM的“运行时数据区”进行的,所以得了解下运行时数据区,包括如下部分(基本定义为网上都有,这里仅仅做个介绍,详细的就不说了):PC寄存器 : 实现多线程基础,每个java虚拟机线程在运行某个方法时,如果方法是本地方法,则PC寄存器值没有定义,如果是则PC寄存器值记录JVM指令地址。栈 : 每...2011-08-25 09:50:54 · 71 阅读 · 0 评论 -
JVM学习笔记之CLASS结构和动态链接模型
之前分析了方法调用和运行的过程,基本上可以满足代码层的需求了,不过为了更好的理解调用和运行的过程,还是分析下CLASS文件的结构和他动态链接的模型。 首先还是得看下CLASS文件的结构。CLASS文件的结构分为(只列了简单的总结,我目前也用不到太深入的):1.magic(魔数):是一个定值0xCAFEBABE,不是它开头的文件就不是CLASS。为什么是这么个数呢?据说是巧合...2011-09-10 15:30:25 · 176 阅读 · 0 评论 -
阶段成果
2011-11-13参与翻译《Java虚拟机规范 (Java SE 7 中文版)》http://www.iteye.com/topic/1117824 2012-10-9发布《IBM虚拟机J9指南》http://www.iteye.com/topic/1127089原创 2011-11-14 12:00:57 · 145 阅读 · 0 评论 -
HS命令总结
目前一直在用J9,对HS的一些命令有些淡忘,最近用到时查了些资料,整理了一下备用(基于Linux)。jps 是用来查看HS里面所有进程的信息,包括状态、进程ID,启动路径等。jps [options] [hostid] -l 输出主类全名。-v 输出虚拟机进程启动的jvm参数。-m 输出启动时传递给main函数的参数。官方参考:http://docs.oracle.com/ja...原创 2013-08-20 15:12:18 · 1479 阅读 · 0 评论 -
发布《IBM虚拟机J9指南》
IBM最初研发了数款Java虚拟机,但经过十多年的合并或淘汰,现在推广的商业Java虚拟机只剩下了一款,即J9。J9最初是基于Ottawa实验室的一款SmallTalk虚拟机扩展而来。J9一直以来都被IBM赞为世界最快的Java虚拟机,这虽然有自卖自夸的噱头,但是在服务器领域的长时间且广泛的使用已经证明了J9是一款性能优秀且可靠的虚拟机。 由于IBM的推广策略原因,J9在中国的熟悉程...2012-10-11 15:13:48 · 627 阅读 · 0 评论