Java知识分享网 - 轻松学习从此开始!    

Java知识分享网

Java1234官方群25:java1234官方群17
Java1234官方群25:838462530
        
SpringBoot+SpringSecurity+Vue+ElementPlus权限系统实战课程 震撼发布        

最新Java全栈就业实战课程(免费)

springcloud分布式电商秒杀实战课程

IDEA永久激活

66套java实战课程无套路领取

锋哥开始收Java学员啦!

Python学习路线图

锋哥开始收Java学员啦!
当前位置: 主页 > Java文档 > Java基础相关 >

《HotSpot实战》PDF 下载


分享到:
时间:2016-07-03 11:26来源:https://download.csdn.net/ 作者:转载  侵权举报
《HotSpot实战》PDF 下载
失效链接处理
《HotSpot实战》PDF 下载

转载自:https://download.csdn.net/download/hx0_0_8/8434473

下载地址:
版权归出版社和原作者所有,链接已删除,请购买正版
 
电子版仅供预览及学习交流使用,下载后请24小时内删除,支持正版,喜欢的请购买正版书籍:《HotSpot实战》
 
图书简介:
《HotSpot实战》深入浅出地讲解了HotSpot虚拟机的工作原理,将隐藏在它内部的本质内容逐一呈现在读者面前,包括OpenJDK与HotSpot项目、编译和调试HotSpot的方法、HotSpot内核结构、Launcher、OOP-Klass对象表示系统、链接、运行时数据区、方法区、常量池和常量池Cache、Perf Data、Crash分析方法、转储分析方法、垃圾收集器的设计演进、CMS和G1收集器、栈、JVM对硬件寄存器的利用、栈顶缓存技术、解释器、字节码表、转发表、Stubs、Code Cache、Code生成器、JIT编译器、C1编译器、编译原理、JVM指令集实现、函数的分发机制、VTABLE和ITABLE、异常表、虚拟机监控工具(如jinfo、jstack、jhat、jmap等)的实现原理和开发方法、Attach机制、基于GUI的JVM分析工具(如MAT、VisualVM)等内容。
  除了HotSpot技术,《HotSpot实战》还对方法论进行了探讨。在各个章节的讲解中,都会有一些与系统运行机制相关的实战或练习,供读者练手。通过这些实战练习,不仅有助于读者加深对知识或原理的理解,更为重要的是,它还可以培养读者独立探索的思维方式,这有助于读者把知识融会贯通并灵活应用到实际项目中。
  《HotSpot实战》适合于已具有一定Java编程基础的读者,以及在Java或基于JVM的编程语言平台下进行各类软件开发的开发人员、测试人员和运维人员。对于JVM和编程语言爱好者来说,《HotSpot实战》也具有一定的学习参考价值。
 
相关截图:
 
图书目录:

第1章 初识HotSpot 
1.1 JDK概述 
1.1.1 JCP与JSR 
1.1.2 JDK的发展历程 
1.1.3 Java 7的语法变化 
1.2 动手编译虚拟机 
1.2.1 源代码下载 
1.2.2 HotSpot源代码结构 
1.2.3 搭建编译环境 
1.2.4 编译目标 
1.2.5 编译过程 
1.2.6 编译常见问题 
1.3 实战:在HotSpot内调试HelloWorld 
1.3.1 认识GDB 
1.3.2 准备调试脚本 
1.4 小结 

第2章 启动 
2.1 HotSpot内核 
2.1.1 如何阅读源代码 
2.1.2 HotSpot内核框架 
2.1.3 Prims 
2.1.4 Services 
2.1.5 Runtime 
2.2 启动 
2.2.1 Launcher 
2.2.2 虚拟机生命周期 
2.2.3 入口:main函数 
2.2.4 主线程 
2.2.5 InitializeJVM函数 
2.2.6 JNI_CreateJavaVM函数 
2.2.7 调用Java主方法 
2.2.8 JVM退出路径 
2.3 系统初始化 
2.3.1 配置OS模块 
2.3.2 配置系统属性 
2.3.3 加载系统库 
2.3.4 启动线程 
2.3.5 vm_init_globals函数:初始化全局数据结构 
2.3.6 init_globals函数:初始化全局模块 
2.4 小结 

第3章 类与对象 
3.1 对象表示机制 
3.1.1 OOP-Klass二分模型 
3.1.2 Oops模块 
3.1.3 OOP框架与对象访问机制 
3.1.4 Klass与instanceKlass 
3.1.5 实战:用HSDB调试HotSpot 
3.2 类的状态转换 
3.2.1 入口:Class文件 
3.2.2 类的状态 
3.2.3 加载 
3.2.4 链接 
3.2.5 初始化 
3.2.6 实战:类的“族谱” 
3.2.7 实战:系统字典 
3.3 创建对象 
3.3.1 实例对象的创建流程 
3.3.2 实战:探测JVM内部对象 
3.4 小结 

第4章 运行时数据区 
4.1 堆 
4.1.1 Java的自动内存管理 
4.1.2 堆的管理 
4.2 线程私有区域 
4.2.1 PC 
4.2.2 JVM栈 
4.3 方法区 
4.3.1 纽带作用 
4.3.2 常量池 
4.3.3 常量池缓存:ConstantPoolCache 
4.3.4 方法的表示:methodOop 
4.3.5 方法的解析:将符号引用转换成直接引用 
4.3.6 代码放在哪里:ConstMethodOop 
4.3.7 实战:探测运行时常量池 
4.4 性能监控数据区:Perf Data 
4.4.1 描述这段空间:PerfMemory 
4.4.2 查看 
4.4.3 生产 
4.5 转储 
4.5.1 用VisualVM进行转储分析 
4.5.2 JVM Crash 
4.6 小结 

第5章 垃圾收集 
5.1 堆与GC 
5.1.1 垃圾收集 
5.1.2 分代收集 
5.1.3 快速分配 
5.1.4 栈上分配和逸出分析 
5.1.5 GC公共模块 
5.2 垃圾收集器 
5.2.1 设计演进 
5.2.2 CMS收集器 
5.2.3 G1收集器 
5.3 实战:性能分析方法 
5.3.1 获取GC日志 
5.3.2 GC监控信息 
5.3.3 内存分析工具 
5.3.4 选择合适的收集器与GC性能评估 
5.3.5 不要忽略JVM Crash日志 
5.4 小结 

第6章 栈 
6.1 硬件背景:了解真实机器 
6.1.1 程序是如何运行的 
6.1.2 x86与栈帧 
6.1.3 ARM对Java硬件级加速:Jazelle技术 
6.2 Java栈 
6.2.1 寄存器式指令集与栈式指令集 
6.2.2 HotSpot中的栈 
6.2.3 栈帧 
6.2.4 充分利用寄存器资源 
6.2.5 虚拟机如何调用Java函数 
6.2.6 优化:栈顶缓存 
6.2.7 实战:操作数栈 
6.3 小结 

第7章 解释器和即时编译器 
7.1 概述 
7.2 解释器如何工作 
7.2.1 Interpreter模块 
7.2.2 Code模块 
7.2.3 字节码表 
7.2.4 Code Cache 
7.2.5 InterpreterCodelet与Stub队列 
7.2.6 Code生成器 
7.2.7 模板表与转发表 
7.2.8 实战:InterpreterCodelet 
7.3 即时编译器 
7.3.1 概述 
7.3.2 编译器模块 
7.3.3 编译器的基本结构 
7.3.4 实战:编译原理实践,了解编译中间环节 
7.4 小结 

第8章 指令集 
8.1 再说栈式指令集 
8.2 数据传送 
8.2.1 局部变量、常量池和操作数栈之间的数据传送 
8.2.2 数据传送指令 
8.2.3 实战:数组的越界检查 
8.3 类型转换 
8.4 对象的创建和操作 
8.5 程序流程控制 
8.5.1 控制转移指令 
8.5.2 条件转移 
8.5.3 无条件转移 
8.5.4 复合条件转移 
8.5.5 实战:switch语句如何使用String 
8.6 运算 
8.6.1 加法:iadd 
8.6.2 取负:ineg 
8.7 函数的调用和返回 
8.7.1 Java函数分发机制:VTABLE与ITABLE 
8.7.2 invoke系列指令 
8.7.3 动态分发:覆盖 
8.7.4 静态分发:重载 
8.8 异常 
8.8.1 异常表 
8.8.2 创建异常 
8.8.3 try-catch 
8.8.4 finally 
8.9 小结 

第9章 虚拟机监控工具 
9.1 Attach机制 
9.1.1 AttachProvider与VirtualMachine 
9.1.2 命令的下发:execute() 
9.1.3 命令的执行:Attach Listener守护线程 
9.2 查看JVM进程 
9.2.1 用jps查看Java进程 
9.2.2 实战:定制jps,允许查看库路径 
9.3 查看和配置JVM 
9.3.1 用jinfo查看JVM参数配置 
9.3.2 实战:扩展flags选项,允许查看命令行参数 
9.4 堆内存转储工具 
9.4.1 Heap Dump 
9.4.2 原理 
9.5 堆转储分析 
9.5.1 Heap Dump分析工具:jhat 
9.5.2 实战:MAT分析过程 
9.6 线程转储分析 
9.6.1 jstack 
9.6.2 实战:如何分析资源等待 
9.7 小结 
 


------分隔线----------------------------

锋哥公众号


锋哥微信


关注公众号
【Java资料站】
回复 666
获取 
66套java
从菜鸡到大神
项目实战课程

锋哥推荐