GraalVM与Java静态编译:原理与应用

GraalVM与Java静态编译:原理与应用

作者:林子熠

出版社:机械工业

出版年:2021年12月

ISBN:9787111696391

所属分类:成功励志

书刊介绍

《GraalVM与Java静态编译:原理与应用》内容简介

全书逻辑上分为3篇。
1.第1篇首先概要介绍Java编译器的演进过程,然后介绍Java静态编译的基本原理、总体能力和发展前景 2.第2篇详细介绍GraalVM如何实现Java的静态编译,着重介绍是如何支持现有Java特性。
3.第3篇主要关注GraalVM的实践应用。静态编译目前还未能达到开箱即用的状态,这一部分会介绍如何将传统Java应用编译为二进制可执行文件或静态库文件。
通过阅读本书,读者可以了解和掌握目前新的Java静态编译技术的原理、特性和优缺点,能够判断评估自己的业务是否适用于静态编译、是否值得投入资源对现有业务进行静态化改造。
林子熠,博士,阿里巴巴集团技术专家,曾任华为技术有限公司高级软件开发工程师。
专注于Java静态编译方向,主要负责Java静态编译技术在阿里巴巴生态中的应用,并以落地实践中发现的问题为切入点,向GraalVM社区贡献了多项重要特性,是GraalVM社区建设的积极参与者;曾作为核心人员,负责将华为方舟编译器前端的Java字节码和Art Dex字节码转换为方舟中间语言的开发工作;曾受邀作为上海JUG2019报告嘉宾和北京QCon2020报告嘉宾,介绍GraalVM静态编译技术;曾在编译器领域国际顶级学术会议CGO2021的Graal专项论坛中报告对Java序列化特性的静态编译支持实现。

作品目录

推荐语
作者简介

前言
第一部分
从解释执行到静态编译:Java的编译发展之路
第1章:Java静态编译技术的诞生
1.1、Java程序的运行生命周期
1.2、冷启动问题
1.3、初识Java静态编译技术
1.4、小结
第2章:Java静态编译的业界实现
2.1、Oracle
GraalVM
2.2、华为方舟编译器
2.3、小结
第3章:GraalVM整体结构
3.1、子项目与组件
3.2、GraalVM编译系统工具mx
3.3、在IDE中打开GraalVM
3.4、小结
第4章:从Java程序到本地代码:静态编译应用流程
4.1、获取GraalVM
JDK
4.2、从源码编译
4.3、获取依赖库
4.4、预执行目标应用程序
4.5、静态编译目标应用程序
4.6、静态编译Java程序实例
4.7、小结
第二部分
静态编译实现原理
第5章:Substrate
VM静态编译框架
5.1、静态编译启动器
5.2、静态编译实现流程
5.3、Substrate
VM运行时支持
5.4、小结
第6章:Feature机制
6.1、Feature机制概览
6.2、Feature管理
6.3、Feature影响编译流程
6.4、GraalFeature实现静态编译优化
6.5、Feature接口函数
6.6、小结
第7章:编译时替换机制
7.1、替换机制在Substrate
VM中的应用
7.2、基于注解的替换
7.3、实现原理
7.4、小结
第8章:类提前初始化优化
8.1、Java中的类初始化
8.2、编译时的类初始化
8.3、优化实现原理
8.4、手动设置类初始化时机
8.5、小结
第9章:反射的实现与优化
9.1、反射在传统Java中的实现
9.2、基于配置的支持
9.3、Substrate
VM的反射实现
9.4、其他类似动态特性的支持
9.5、小结
第10章:序列化
10.1、序列化特性的JDK原生实现
10.2、静态编译的序列化实现
10.3、局限性
10.4、小结
第11章:跨语言编程:用Java语言编写共享库
11.1、样例项目cinterfacetutorial
11.2、共享库的Java实现源码解析
11.3、静态编译JNI共享库
11.4、小结
第12章:CLibrary机制
12.1、isolate
12.2、WordBase接口系统
12.3、注解系统
12.4、正确释放内存
12.5、小结
第三部分
静态编译实战
第13章:静态编译Serverless应用到阿里云函数计算平台
13.1、阿里云函数计算平台
13.2、静态编译基于Micronaut的Spring-Boot示例项目
13.3、部署到阿里云
13.4、性能比较
13.5、小结
第14章:native-image-agent的实现
14.1、native-image-agent与JVMTI
14.2、实现静态编译的JVMTI
Agent
14.3、native-image-agent的可用选项
14.4、小结
第15章:调试
15.1、编译debug版本的native
image
15.2、使用GDB调试native
image
15.3、小结

相关推荐

微信二维码