OOP.Java.SE.JRE.JVM
文章平均质量分 76
楼上的大叔阿
这个作者很懒,什么都没留下…
展开
-
JVM 调试的的时候崩溃
代码很简单:public class StringObjectDemo { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Object s1 = "HelloWorld"; Object s2 = new String("原创 2013-07-09 22:59:45 · 10406 阅读 · 0 评论 -
java 虚拟机工作原理详解
一、类加载器首先来看一下java程序的执行过程。 从这个框图很容易大体上了解java程序工作原理。首先,你写好java代码,保存到硬盘当中。然后你在命令行中输入[java] view plaincopyjavac YourClassName.java转载 2013-07-04 23:40:43 · 1059 阅读 · 0 评论 -
JVM 指令集总结
1.凡是带const的表示将什么数据压操作数栈。 如:iconst_2 将int型数据2压入到操作数栈 aconst_null 将null值压入栈。2.bipush和sipush 表示将单字节或者短整形的常量值压入操作数栈。3.带ldc的表示将什么类型数据从常量池中压入到操作数栈。 如:ldc_w 将int或者flat或者string类型的数据压转载 2013-07-20 22:28:15 · 920 阅读 · 0 评论 -
JVM 指令集与 X86 等真实cpu指令集的异同
1.函数调用指令集x86 cpu 函数调用指令集 call ret 主要作用是保存现场和恢复现场,比如 cpu 寄存器压栈和弹栈;jvm 函数调用指令集 invokevirtual invokeinterface invokespecial invokestatic return .. 等等,由于 jvm 没有物理寄存器,而是用操作数栈和pc寄存器来替代,jvm 保存现场和恢复现场的解决方原创 2013-07-13 22:25:30 · 3291 阅读 · 2 评论 -
JAVA 虚拟机体系结构
原文地址:http://www.cnblogs.com/java-my-life/archive/2012/08/01/2615221.htmlJAVA虚拟机的生命周期 一个运行时的Java虚拟机实例的天职是:负责运行一个java程序。当启动一个Java程序时,一个虚拟机实例也就诞生了。当该程序关闭退出,这个虚拟机实例也就随之消亡。如果同一台计算机上同时运行三个Java程序,将得转载 2013-07-05 01:13:19 · 989 阅读 · 0 评论 -
Java 虚拟机学习 - 对象访问的定位方式
对象访问会涉及到Java栈、Java堆、方法区这三个内存区域。如下面这句代码:[java] view plaincopyprint?Object objectRef = new Object(); 假设这句代码出现在方法体中,"Object objectRef” 这部分将会反映到Java栈的本地变量中,作为一个re转载 2013-07-09 23:46:35 · 2097 阅读 · 1 评论 -
实例分析 Java Class 的文件结构
原文地址:http://coolshell.cn/articles/9229.html今天把之前在Evernote中的笔记重新整理了一下,发上来供对java class 文件结构的有兴趣的同学参考一下。学习Java的朋友应该都知道Java从刚开始的时候就打着平台无关性的旗号,说“一次编写,到处运行”,其实说到无关性,Java平台还有另外一个无关 性那就是语言无关性,要实现语言无关性转载 2013-07-12 00:19:59 · 766 阅读 · 0 评论 -
HotSpot 虚拟机对象的创建过和对象的内存结构
原文地址:http://www.infoq.com/cn/articles/jvm-hotspot请读者首先注意本篇的题目中的限定语“HotSpot虚拟机”,在虚拟机规范中明确写道, 所有在虚拟机规范之中没有明确描述的实现细节,都不应成为虚拟机设计者发挥创造性的牵绊,设计者可以完全自主决定所有规范中不曾描述的虚拟机内部细节。 例 如:运行时数据区的内存如何布局、选用哪种垃圾收集的算法等”。转载 2013-07-09 10:26:58 · 1469 阅读 · 0 评论 -
HotSpot 对象在内存中的结构
今天看到一个不错的PPT:Build Memory-efficient Java Applications,开篇便提出了一个问题,在Hotspot JVM中,32位机器下,Integer对象的大小是int的几倍?我们都知道在Java语言规范已经规定了int的大小是4个字节,那么Integer对象的大小是多少呢?要知道一个对象的大小,那么必须需要知道对象在虚拟机中的结构是怎样的,来看转载 2013-07-09 10:09:42 · 1563 阅读 · 0 评论 -
Java 虚拟机家族考
原文地址:http://www.infoq.com/cn/articles/jvm-family/ 作者 周志明 发布于 七月 26, 2011说起Java虚拟机,许多Java程序员都会潜意识地把它与Sun[1] HotSpot虚拟机等同看待,也许还有一些程序员会注意到BEA JRockit和IBM J9,但大多数人对JVM的认识都仅限于此了。从1996年初Sun发布的JD转载 2013-07-05 01:03:52 · 1160 阅读 · 0 评论 -
Java 虚拟机内存模型
笔记:原文地址:http://blog.csdn.net/zapldy/article/details/7401063我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读转载 2013-07-13 00:04:45 · 957 阅读 · 0 评论 -
java 虚拟机的研究与实现
2006-9-25 11:08:12 作者:夏兵 俞建军(79)引言 Java虚拟机本质是就是一个程序,当它在命令行上启动的时候,就开始执行保存在某字节码文件中的指令。Java语言的可移植性正是建立在Java虚拟机的基础上。任何平台只要装有针对于该平台的Java虚拟机,字节码文件(.class)就可以在该平台上运行。这就是“一次编译,多次运行”。 kaffe虚拟机的简要转载 2013-07-05 00:18:56 · 823 阅读 · 0 评论 -
HotSpot JVM 对象的内存结构和对象成员的堆内存分配原则
原文地址:http://www.importnew.com/1305.html原文于2008年11月13日 发表, 2008年12月18日更新:这里还有一篇关于Java的Sizeof运算符的实用库的文章。学C/C++出身的我,对Java有一点非常困惑,那就是缺乏计算对象占用内存大小的机制。而在C++中就可以通过sizeof运算符来获得基本类型以及类实例的大小。C和C++中的这个操作转载 2013-07-09 10:44:25 · 1221 阅读 · 0 评论 -
JVM 崩溃分析方法
没想到我这种刚刚入门的人使用 JVM 都把她搞崩溃了,所以在网上找了一下解决办法:原文地址:http://www.cnblogs.com/shiyangxt/archive/2009/01/06/1370627.html前些天,搞JNI的时候,报了个JVM崩溃的错。错误信息如下:## An unexpected error has been detected by Ho转载 2013-07-09 22:56:49 · 2271 阅读 · 0 评论 -
从操作系统进程的角度理解 Java 虚拟机
java 是一个 windows 的命令行的外部命令,其实对应了一个应用程序,这个程序就是 javahome/jre/bin 中的 java.exe,java 这个应用程序启动的时候,windows 就启动了一个名为 java.exe 的进程,如下图:因为我是在windows下面的命令行中启动的 java,所以在 explorer.exe —子进程—> cmd.exe—子进程—>jav原创 2013-07-08 12:11:52 · 2325 阅读 · 0 评论