深入理解Java虚拟机是一册由周志明著的一本Java虚拟机学习教材,这本册子可以让你深入理解java虚拟机PEF围绕虚拟机进行讲解,里面的内容详细介绍Java的发展和其作用,让大家快速了解Java,有需要进行学习的用户不要错过了哦!
深入理解java虚拟机PDF目录
前言
第一部分 走近Java
第1章 走近Java
1.1 概述
1.2 Java技术体系
1.3 Java发展史
1.4 Java虚拟机发展史
1.4.1 Sun Classic Exact VM
1.4.2 Sun HotSpot VM
1.4.3 Sun Mobile-Embedded VM Meta-Circular VM
1.4.4 BEA JRockit IBM J9 VM
1.4.5 Azul VM BEA Liquid VM
1.4.6 Apache Harmony Google Android Dalvik VM
1.4.7 Microsoft JVM及其他
1.5 展望Java技术的未来
1.5.1 模块化
1.5.2 混合语言
1.5.3 多核并行
1.5.4 进一步丰富语法
1.5.5 64位虚拟机
1.6 实战:自己编译JDK
1.6.1 获取JDK源码
1.6.2 系统需求
1.6.3 构建编译环境
1.6.4 进行编译
1.6.5 在IDE工具中进行源码调试
1.7 本章小结
第二部分 自动内存管理机制
第2章 Java内存区域与内存溢出异常
2.1 概述
2.2 运行时数据区域
2.2.1 程序计数器
2.2.2 Java虚拟机栈
2.2.3 本地方法栈
2.2.4 Java堆
2.2.5 方法区
2.2.6 运行时常量池
2.2.7 直接内存
2.3 HotSpot虚拟机对象探秘
2.3.1 对象的创建
2.3.2 对象的内存布局
2.3.3 对象的访问定位
2.4 实战:OutOfMemoryError异常
2.4.1 Java堆溢出
2.4.2 虚拟机栈和本地方法栈溢出
2.4.3 方法区和运行时常量池溢出
2.4.4 本机直接内存溢出
2.5 本章小结
第3章 垃圾收集器与内存分配策略
3.1 概述
3.2 对象已死吗
3.2.1 引用计数算法
3.2.2 可达性分析算法
3.2.3 再谈引用
3.2.4 生存还是死亡
3.2.5 回收方法区
3.3 垃圾收集算法
3.3.1 标记-清除算法
3.3.2 复制算法
3.3.3 标记-整理算法
3.3.4 分代收集算法
3.4 HotSpot的算法实现
3.4.1 枚举根节点
3.4.2 安全点
3.4.3 安全区域
3.5 垃圾收集器
3.5.1 Serial收集器
3.5.2 ParNew收集器
。。。。。。
深入理解java虚拟机内容简介
整部书分为五大部分,围绕内存管理、执行子系统、程序编译与优化、高效并发等核心主题,对JVM进行了全面深入的分析,深刻揭示了其工作原理。首先从宏观上介绍了Java技术的整体体系,Java和JVM的发展过程,模块化,JDK的编译,这些都有助于理解本书后面的内容。第2部分将解释JVM的自动内存管理,包括虚拟机内存区域的划分原理,以及造成内存溢出的各种原因;常见的垃圾收集算法,垃圾收集器的特性和工作原理;虚拟机常见的监控和故障处理工具的原理及使用。在第三部分中,对虚拟机的执行子系统进行了分析,包括类文件结构、虚拟机类加载机制和虚拟机字节代码执行引擎。第4部分讲解了程序编译和优化,阐述了通用、自动装箱、条件编译等语法原理;介绍了虚拟机热点探测方法;介绍了HotSpot的即时编译器、编译触发条件,以及JIT编译的数据和结果如何从虚拟机外部观察和分析;第五部分探讨了Java实现高效并发的原理,包括JVM内存模型的结构和操作;Java内存模型的原子性、可视性和有序性在Java内存模型中的体现;先决性原则的规则和使用;Java语言中线程的实现原理;虚拟机实现高效并发的一系列锁优化措施。