中文摘要 | 第3-4页 |
英文摘要 | 第4页 |
引言 | 第8-9页 |
第1章 部分求值及基于分段计算的程序优化技术 | 第9-15页 |
1.1 概述 | 第9页 |
1.2 部分求值分析 | 第9-10页 |
1.3 online-offline的部分求值 | 第10-12页 |
1.4 编译部分求值和运行部分求值 | 第12-13页 |
1.5 部分求值技术的应用 | 第13页 |
1.6 程序通用性和效率的关系问题 | 第13-14页 |
1.7 基于分段计算的程序优化技术 | 第14-15页 |
第2章 基于控制流图的数据例化与程序例化 | 第15-21页 |
2.1 程序例化 | 第15页 |
2.2 数据例化 | 第15-17页 |
2.3 数据例化和程序例化的结合 | 第17-18页 |
2.4 基于控制流图的数据例化和程序例化 | 第18-19页 |
2.5 控制流图 | 第19-21页 |
第3章 Java语言及其优化 | 第21-27页 |
3.1 概述 | 第21页 |
3.2 通用优化方法 | 第21-22页 |
3.3 针对编译系统的Java优化 | 第22-26页 |
3.3.1 javac优化 | 第22-23页 |
3.3.2 采用解释技术的Java编译系统 | 第23页 |
3.3.3 Java即时编译系统(JIT—Just In Time) | 第23-24页 |
3.3.4 动态Java编译 | 第24-25页 |
3.3.5 采用本地编译技术的Java编译系统 | 第25-26页 |
3.4 本课题组提出的优化 | 第26-27页 |
第4章 JgenEval:一个基于控制流图的Java语言动态例化系统 | 第27-37页 |
4.1 JgenEval概述 | 第27-28页 |
4.2 JgenEval中的控制流图 | 第28页 |
4.3 JgenEval系统设计 | 第28-31页 |
4.4 BTA绑定时间分析(Binding Time Analysis) | 第31页 |
4.5 标注程序的语法制导翻译 | 第31-33页 |
4.6 控制流图及其生成 | 第33-34页 |
4.7 滞留程序及其生成 | 第34-35页 |
4.8 例化程序及其生成 | 第35-36页 |
4.9 本章小结 | 第36-37页 |
第5章 标注程序的语法制导翻译 | 第37-56页 |
5.1 概述 | 第37-38页 |
5.2 标注程序的语言结构及规范 | 第38-44页 |
5.2.1 Field结构 | 第41-42页 |
5.2.2 Class结构 | 第42-43页 |
5.2.3 标注的结构-annotation | 第43-44页 |
5.3 词法分析 | 第44-48页 |
5.3.1 注释的分析 | 第44-45页 |
5.3.2 字符串文本值的词法分析 | 第45-46页 |
5.3.3 转换序列的词法分析 | 第46页 |
5.3.4 标识符的词法分析 | 第46-47页 |
5.3.5 标注的分析 | 第47页 |
5.3.6 词法分析子程序的组合 | 第47-48页 |
5.4 语法分析 | 第48-53页 |
5.4.1 parseFile | 第49-50页 |
5.4.2 parseClass | 第50-51页 |
5.4.3 parseField | 第51-52页 |
5.4.4 parseStatement | 第52-53页 |
5.4.5 parseExpression和parseTerm | 第53页 |
5.5 Class,Field及Tree结构的格式化输出 | 第53-54页 |
5.6 本章小结 | 第54-56页 |
第6章 控制流图及其自动生成系统 | 第56-76页 |
6.1 概述 | 第56页 |
6.2 标注控制流图 | 第56-58页 |
6.3 例化控制流图 | 第58-59页 |
6.4 控制流图的设计 | 第59-64页 |
6.4.1 设计思想 | 第59-60页 |
6.4.2 控制流图类结构 | 第60-63页 |
6.4.3 BaseBlock,SeqBlock,IfThenElseBlock结构 | 第63-64页 |
6.4.4 CFGBaseBlock,FieldDefinition结构 | 第64页 |
6.5 控制流图流图若干理论问题的探讨 | 第64-65页 |
6.6 标注控制流图的自动生成 | 第65-72页 |
6.6.1 复合语句思想 | 第66-67页 |
6.6.2 Node到BaseBlock生成算法描述 | 第67-69页 |
6.6.3 BaseBlock合并 | 第69-70页 |
6.6.4 BaseBlock标识和多重循环及复杂结构问题 | 第70-72页 |
6.7 控制流图生成中的Visitor设计模式 | 第72-75页 |
6.7.1 关于设计模式 | 第72页 |
6.7.2 标注控制流图生成中的Visitor设计模式 | 第72-75页 |
6.8 CFGViewer:一个控制流图的GUI显示器 | 第75页 |
6.9 本章小结 | 第75-76页 |
第7章 滞留程序及其自动生成 | 第76-93页 |
7.1 JgenEval中的滞留程序 | 第76页 |
7.2 滞留程序的设计 | 第76-81页 |
7.2.1 设计要求 | 第76-77页 |
7.2.2 滞留程序表示结构的设计 | 第77-81页 |
7.3 滞留程序运行分析 | 第81-84页 |
7.4 滞留程序的自动生成 | 第84-89页 |
7.4.1 滞留程序生成方法 | 第84-86页 |
7.4.2 while-switch结构的生成 | 第86-87页 |
7.4.3 case结构的生成 | 第87-88页 |
7.4.4 求值、展开、例化、滞留 | 第88-89页 |
7.5 滞留程序字节码的生成 | 第89-91页 |
7.5.1 Jgen概述 | 第89-90页 |
7.5.2 switch-case结构的字节码优化 | 第90页 |
7.5.3 通过Jgen的字节码生成 | 第90-91页 |
7.6 本章小结 | 第91-93页 |
第8章 结论 | 第93-95页 |
8.1 研究成果 | 第93页 |
8.2 本人工作 | 第93-94页 |
8.3 前景及展望 | 第94页 |
8.4 改进 | 第94-95页 |
参考文献 | 第95-97页 |
致谢 | 第97-98页 |
附录Ⅰ 域签名编码文法 | 第98-99页 |
附录Ⅱ Java语言标注程序规范 | 第99-105页 |
附录Ⅲ Jgen外接口一览 | 第105-107页 |