嵌入式Java运行环境的性能优化与分析
摘要 | 第1-5页 |
ABSTRACT(英文摘要) | 第5-10页 |
主要符号对照表 | 第10-11页 |
第一章 绪论 | 第11-16页 |
·课题背景 | 第11页 |
·现有的优化方法 | 第11-14页 |
·速度的优化 | 第11-13页 |
·解释器整体优化 | 第12页 |
·预先优化( Ahead-Of-Time ) | 第12页 |
·即时编译JIT( Just-In-Time ) | 第12页 |
·热点技术HotSpot | 第12-13页 |
·静态本地编译 | 第13页 |
·硬件实现 | 第13页 |
·开销的优化 | 第13-14页 |
·垃圾收集的改进 | 第13-14页 |
·代码压缩 | 第14页 |
·代码卸载 | 第14页 |
·论文主要工作和结构 | 第14-16页 |
·论文的主要工作 | 第14-15页 |
·论文结构 | 第15-16页 |
第二章 基础知识 | 第16-26页 |
·Java 虚拟机 | 第16-23页 |
·Java 程序执行 | 第16-17页 |
·虚拟机启动 | 第16页 |
·类装载 | 第16页 |
·连接:验证、准备和解析 | 第16页 |
·初始化 | 第16-17页 |
·类实例的创建 | 第17页 |
·虚拟机退出 | 第17页 |
·Java 虚拟机结构 | 第17-19页 |
·Java 类文件格式 | 第17页 |
·运行时数据区域 | 第17-19页 |
·运行栈帧(Frames) | 第19页 |
·Java 指令集 | 第19-23页 |
·装载和存储指令 | 第20-21页 |
·算术指令 | 第21页 |
·类型转换指令 | 第21页 |
·对象创建、操作指令 | 第21-22页 |
·操作数栈管理指令 | 第22页 |
·控制转移指令 | 第22页 |
·方法调用和返回指令 | 第22-23页 |
·ARM 嵌入式平台 | 第23-26页 |
·基本特征 | 第23页 |
·编程模型 | 第23-24页 |
·数据类型 | 第24页 |
·程序流程控制 | 第24-26页 |
第三章 分析与设计 | 第26-42页 |
·问题分析 | 第26-29页 |
·关键矛盾 | 第26-27页 |
·性能提升之源 | 第27-29页 |
·定量关系 | 第29-30页 |
·优化思路 | 第30-33页 |
·抛弃“取指-解码-执行”循环 | 第30-32页 |
·从堆栈到寄存器 | 第32-33页 |
·难点 | 第33页 |
·参考实现的结构 | 第33-35页 |
·本系统的设计 | 第35-42页 |
·优化工作 | 第35-36页 |
·系统框架结构 | 第36页 |
·Java操作数栈的寄存器映射 | 第36-37页 |
·动态编译核心设计 | 第37-41页 |
·Java字节码识别器的自动产生 | 第38-39页 |
·本地代码的自动生成 | 第39-40页 |
·代码存放空间的动态分配 | 第40-41页 |
·代码卸载器的设计 | 第41-42页 |
第四章 实现与验证 | 第42-57页 |
·开发环境 | 第42-44页 |
·开发平台 | 第42页 |
·目标平台 | 第42页 |
·交叉编译器 | 第42-43页 |
·构建器 | 第43页 |
·调试器 | 第43-44页 |
·版本控制 | 第44页 |
·动态编译实现 | 第44-49页 |
·分析程序生成器Bison | 第44-45页 |
·字节码识别 | 第45-46页 |
·GCC 内联汇编 | 第46-47页 |
·代码生成与拷贝 | 第47-48页 |
·本地代码重定位 | 第48-49页 |
·热点探测实现 | 第49-50页 |
·热点的度量 | 第49-50页 |
·热点的粒度 | 第50页 |
·热点阈值 | 第50页 |
·代码部署实现 | 第50-52页 |
·代码卸载实现 | 第52-53页 |
·验证实验方法 | 第53-54页 |
·验证平台的构建 | 第54-55页 |
·实验 | 第55-57页 |
第五章 结论 | 第57-59页 |
·总结 | 第57-58页 |
·前景展望 | 第58-59页 |
参考文献 | 第59-63页 |
致谢 | 第63-64页 |
攻读硕士学位期间科研经历及论文发表情况 | 第64-67页 |