摘要 | 第1-6页 |
ABSTRACT | 第6-13页 |
第一章 绪论 | 第13-15页 |
·引言 | 第13页 |
·研究重点、研究方法及章节安排 | 第13-14页 |
·研究重点 | 第13-14页 |
·研究方法 | 第14页 |
·章节安排 | 第14页 |
·本章小节 | 第14-15页 |
第二章 相关研究 | 第15-25页 |
·嵌入式Java 技术 | 第15-19页 |
·CLDC 概述 | 第17-19页 |
·CLDC 的目标 | 第17页 |
·CLDC 的整体需求 | 第17-18页 |
·CLDC 的硬件需求 | 第18页 |
·CLDC 的软件需求 | 第18页 |
·CLDC 的功能范围 | 第18-19页 |
·MIDP 概述 | 第19页 |
·KVM 技术 | 第19-21页 |
·KVM 概述 | 第20页 |
·KVM 执行流程 | 第20-21页 |
·对象缓存技术 | 第21-22页 |
·垃圾回收技术 | 第22-24页 |
·垃圾回收算法概述 | 第22-24页 |
·经典算法 | 第22-23页 |
·现代算法 | 第23-24页 |
·KVM 的垃圾回收算法 | 第24页 |
·本章小节 | 第24-25页 |
第三章 KVM 的移植 | 第25-35页 |
·移植的目标平台 | 第25页 |
·KVM 参考实现的代码结构 | 第25-27页 |
·VmCommon | 第26-27页 |
·VmExtra | 第27页 |
·其他目录 | 第27页 |
·KVM 移植的具体实现 | 第27-34页 |
·编译器选项及宏定义 | 第28-32页 |
·编译器常规选项 | 第28-29页 |
·系统配置常规选项 | 第29-30页 |
·内存分配选项 | 第30-31页 |
·垃圾回收选项 | 第31页 |
·解释器执行选项 | 第31-32页 |
·相关文件及函数 | 第32-34页 |
·machine_md.h | 第32-33页 |
·runtime_md.c | 第33页 |
·main.c | 第33-34页 |
·基本C 函数库支持 | 第34页 |
·本章小节 | 第34-35页 |
第四章 KVM 的内存管理和垃圾回收机制 | 第35-49页 |
·Java 类和对象的内部表示 | 第35-40页 |
·Java 类的内部表示 | 第35-37页 |
·Java 类的类型 | 第35页 |
·Java 类加载的状态迁移 | 第35-36页 |
·Java 类的内部表示结构 | 第36-37页 |
·Java 对象的内部表示 | 第37-40页 |
·Java 对象的类型 | 第37-38页 |
·Java 对象的内部表示结构 | 第38-39页 |
·Java 对象的内部存储 | 第39-40页 |
·KVM 的内存管理机制 | 第40-45页 |
·Heap Space 的结构 | 第40-41页 |
·KVM 启动过程和内存分配 | 第41-44页 |
·栈空间结构 | 第44-45页 |
·KVM 的垃圾回收机制 | 第45-48页 |
·垃圾回收算法 | 第46-47页 |
·存在的问题与可能的解决方案 | 第47-48页 |
·本章小节 | 第48-49页 |
第五章 KVM 的内存管理优化 | 第49-62页 |
·Slab Layer 技术 | 第49-53页 |
·Slab Layer 技术概论 | 第49-50页 |
·Linux 内核中Slab Layer 实现的分析 | 第50-53页 |
·内存管理优化的实现 | 第53-59页 |
·Slab Layer 模块的实现 | 第54-56页 |
·缓存模块的实现 | 第56-57页 |
·slab 模块的实现 | 第57-59页 |
·测试与分析 | 第59-61页 |
·Fibonacci 数列计算 | 第59页 |
·线程创建 | 第59-60页 |
·多类创建 | 第60页 |
·测试总结 | 第60-61页 |
·本章小节 | 第61-62页 |
第六章 总结与展望 | 第62-64页 |
·关键性问题 | 第62页 |
·主要结论 | 第62页 |
·研究展望 | 第62-64页 |
参考文献 | 第64-67页 |
附录A 核心实现代码 | 第67-75页 |
致谢 | 第75-76页 |
参与课题及已发表论文 | 第76页 |