
实战java虚拟机笔记
文章平均质量分 90
sicofield
这个作者很懒,什么都没留下…
展开
-
java虚拟机的基本结构
JVM启动流程 其中jvm.cfg是jvm的配置文件JVM基本结构PC寄存器每个线程拥有一个PC寄存器,在线程创建时创建,指向下一条指令的地址。如果是执行本地方法时,PC的值为undefined。想一下为什么jvm虚拟机只有一个寄存器——PC寄存器?因为JVM是软件虚拟,无法使用寄存器的硬件优势,所以JVM本就不存在真正意义上的寄存器。内存空间方法...原创 2018-03-18 22:35:17 · 919 阅读 · 0 评论 -
GC的算法与种类
GC的算法与种类引用计数法引用计数器的实现很简单,对于一个对象A,只要有任何一个对象引用了A,则A的引用计数器就加1,当引用失效时,引用计数器就减1。只要对象A的引用计数器的值为0,则对象A就不可能再被使用。 【注】名词解释 可达对象:通过根对象进行引用搜索,最终可以到达的对象 不可达对象:通过根对象进行引用搜索,最终没有被引用到的对象引用计数法的问题引用和去引用伴随加法...原创 2018-03-19 22:04:47 · 748 阅读 · 0 评论 -
Class装载系统
Class装载系统Class类型通常以文件的形式存在(当然,任何二进制流都可以是Class类型),只有被Java虚拟机装载的Class类型才能在程序中使用。系统加载Class类型可以分为加载、链接和初始化3个步骤。其中,链接又可以分为验证、准备和解析3个步骤。 类装载的条件Class只有在必须要使用的时候才会被装载,Java虚拟机不会无条件的装载Class类型。Java虚拟机规定...原创 2018-03-29 23:20:52 · 502 阅读 · 0 评论 -
垃圾收集器与内存分配
垃圾收集器与内存分配串行回收器串行回收器是指使用单线程进行垃圾回收的回收器。串行回收器可以在新生代和老年代使用,根据作用于不同的对空间,分为新生代串行回收器和老年代串行回收器。新生代串行回收器串行回收器其实是实现最简单的,所以也是垃圾回收器中最古老的一种,是jdk中最基本的垃圾回收器之一。其主要有两个特点:它仅仅使用单线程进行垃圾回收 所以没有线程间切换的开销,效率...原创 2018-03-20 22:13:36 · 214 阅读 · 0 评论 -
Class文件结构
Class文件结构java的口号是write once run anywhere。由于有JVM,java是跨平台的(当然现在大部分语言都跨平台了,python,ruby,php)。另外一个重要的特性是JVM提供了跨语言的支持,理论上说无论使用何种语言编写的软件,都可以在任意平台上运行。而实现这一切的基础,就是统一的Class文件结构,它是异构语言和java虚拟机之间的重要桥梁。文件结构...原创 2018-03-28 21:28:13 · 183 阅读 · 0 评论