摘要 | 第1-5页 |
ABSTRACT | 第5-10页 |
第1章 绪论 | 第10-16页 |
·问题描述 | 第10-11页 |
·相关工作 | 第11-14页 |
·改良同步原语的实现 | 第11-13页 |
·基于逃逸分析的同步优化 | 第13-14页 |
·基于锁粗化的同步优化 | 第14页 |
·研究内容 | 第14-15页 |
·论文组织 | 第15-16页 |
第2章 基础知识 | 第16-27页 |
·Java 语言中的同步机制 | 第16-17页 |
·程序分析技术的分类 | 第17页 |
·开源 Java SE 项目 Harmony 简介 | 第17-26页 |
·JIT 流水线编译框架 | 第19-20页 |
·JIT 中的一些基本的共享结构 | 第20-21页 |
·编译流水线的启动 | 第21-23页 |
·编译和重编译机制 | 第23-25页 |
·lock_method 和gc_map | 第25-26页 |
·本地代码的存储管理 | 第26页 |
·本章小结 | 第26-27页 |
第3章 插桩取样系统的设计与实现 | 第27-33页 |
·插桩取样技术概述 | 第27-28页 |
·插桩取样系统的基本思想 | 第28-30页 |
·在 Harmony 中的实现 | 第30-32页 |
·统计与同步相关的操作的数量 | 第30-31页 |
·输出Java 方法调用信息 | 第31-32页 |
·本章小结 | 第32-33页 |
第4章 Stoodley 等的同步优化算法及其实现 | 第33-41页 |
·Stoodley 等的同步优化算法的基本思想 | 第33-35页 |
·优化条件 | 第33-34页 |
·死锁 | 第34页 |
·算法框架 | 第34-35页 |
·Stoodley 等的同步优化算法在 Harmony 中的实现 | 第35-38页 |
·主要变量和数据结构 | 第35-36页 |
·算法流程 | 第36-38页 |
·实验及结果分析 | 第38-39页 |
·本章小结 | 第39-41页 |
第5章 利用即时编译器外提循环中的同步操作 | 第41-51页 |
·同步操作外提算法的基本思想 | 第41-46页 |
·循环外提的条件 | 第41-43页 |
·正确性和性能分析 | 第43-45页 |
·算法框架 | 第45-46页 |
·同步操作外提算法在 Harmony 中的实现 | 第46-48页 |
·实验及结果分析 | 第48-50页 |
·本章小结 | 第50-51页 |
第6章 同步方法优化 | 第51-81页 |
·过程间同步优化算法 | 第51-53页 |
·同步方法优化框架 | 第53-56页 |
·基于锁粗化的同步方法优化算法 | 第56-63页 |
·基本思想 | 第56-59页 |
·死锁 | 第59-61页 |
·收益 | 第61页 |
·代价 | 第61-63页 |
·双版本同步方法优化算法在 Harmony 中的实现 | 第63-73页 |
·程序分析及优化变换 | 第63-71页 |
·编译流水线的启动 | 第71-72页 |
·修改CodeChunkInfo 以及lock_method、gc_map | 第72-73页 |
·分支版本同步方法优化算法在 Harmony 中的实现 | 第73-75页 |
·实验及结果分析 | 第75-80页 |
·同步操作数 | 第75-76页 |
·存储开销 | 第76-77页 |
·性能 | 第77-80页 |
·本章小结 | 第80-81页 |
第7章 结束语 | 第81-83页 |
·主要贡献 | 第81-82页 |
·不足及未来的工作 | 第82-83页 |
参考文献 | 第83-86页 |
致谢 | 第86-87页 |
在读期间发表的学术论文与取得的研究成果 | 第87页 |