随笔分类 - JVM虚拟机
摘要:每个栈帧都包含一个指向运行时常量池中该栈帧所属方法的引用,持有这个引用是为了支持方法调用过程中的动态连接(Dynamic Linking)。Class文件的常量池中存有大量的符号引用,字节码中的方法调用指令就以常量池里指向方法的符号引用作为参数。这些符号引用一部分会在类加载阶段或者第一次使用的时候就
阅读全文
摘要:在JDK1.2版之前,Java里面的引用是很传统的定义:如果reference类型的数据代表的是另外一块内存的起始地址,就称该reference数据是代表某块内存、某个对象的引用。这种定义并没有什么不对,只是现在看来有些过于狭隘了,一个对象在这种定义下只有“被引用”或者“未被引用”两种状态,对于描述
阅读全文
摘要:算法思路 这个算法的基本思路就是通过一系列称为“GC Roots”的根对象作为起始节点集,从这些节点开始,根据引用关系向下搜索,搜索过程所走过的路径成为“引用链”(Refenrence Chain),如果某个对象到GC Roots间没有任何引用链相连,或者用图论的话来说就是从GC Roots到这个对
阅读全文
摘要:什么是JMX 所谓JMX,是Java Management Extensions(Java管理扩展)的缩写,是一个为应用程序植入管理功能的框架。用户可以在任何Java应用程序中使用这些代理和服务实现管理。 JMX架构图 从图中我们可以看到,JMX的结构一共分为三层,从下往上分别为: 基础层:主要是M
阅读全文
摘要:早期(JDK1.4时代及之前)的HotSpot虚拟机为了提供监控、调试等不会在《Java虚拟机规范》中约定的内部功能和数据,就曾开放过Java虚拟机信息监控接口(Java Vritual Machine Profiler Interface, JVMPI)与Java虚拟机调试窗口(Java Virt
阅读全文
摘要:常量池分类 常量池可以分为:字节码常量池,运行时常量池,字符串常量池。 字节码常量池(常量池表 Constant Pool Table) 字节码常量池在Class文件中,用于存放编译期生成的各种字面量与符号引用,主要存放两大类变量:字面量和符号引用。 字面量比较接近于Java语言层面的常量概念,如文
阅读全文

浙公网安备 33010602011771号