Dalvik虚拟机代码注入和内存追踪设计与实现
| 摘要 | 第1-7页 |
| ABSTRACT | 第7-11页 |
| 第一章 绪论 | 第11-20页 |
| ·研究背景、目的及意义 | 第11-12页 |
| ·国内外研究现状 | 第12-18页 |
| ·本文研究内容 | 第18页 |
| ·本文章节安排 | 第18-20页 |
| 第二章 Dalvik 相关技术 | 第20-42页 |
| ·应用程序进程空间 | 第20-24页 |
| ·ActivityThread 运行框架 | 第21-22页 |
| ·Activity 加载过程 | 第22-24页 |
| ·Dalvik 内存管理 | 第24-41页 |
| ·DexFile 内存映射 | 第24-30页 |
| ·垃圾回收 | 第30-41页 |
| ·本章小结 | 第41-42页 |
| 第三章 代码注入的设计与实现 | 第42-60页 |
| ·JNI 函数注册研究与实现 | 第42-48页 |
| ·Java 调用 Native 函数 | 第42-46页 |
| ·JNI 函数注册的实现 | 第46-48页 |
| ·新增 Native 函数研究与实现 | 第48-55页 |
| ·JNIEnv 结构体 | 第48-50页 |
| ·新增 Native 函数的实现 | 第50-55页 |
| ·修改 OpCode 的研究与实现 | 第55-59页 |
| ·Java 虚拟机指令码 | 第55-57页 |
| ·修改 OpCode 的实现 | 第57-59页 |
| ·本章小结 | 第59-60页 |
| 第四章 内存追踪的设计与实现 | 第60-84页 |
| ·函数内存数据 | 第60-64页 |
| ·手机端获取函数内存设计 | 第61-62页 |
| ·云端获取函数内存设计 | 第62-64页 |
| ·获取函数栈帧方法设计 | 第64-67页 |
| ·获取寄存器方法设计 | 第67-68页 |
| ·获取静态域方法设计 | 第68-70页 |
| ·获取对象方法设计 | 第70-79页 |
| ·对象结构研究 | 第70-74页 |
| ·对象大小计算 | 第74-76页 |
| ·对象引用对象查找设计 | 第76-79页 |
| ·获取类方法设计 | 第79-82页 |
| ·类的加载 | 第79-81页 |
| ·获取类方法设计 | 第81-82页 |
| ·本章小结 | 第82-84页 |
| 第五章 实验结果与分析 | 第84-88页 |
| ·编译手机端和云端 | 第84-85页 |
| ·手机端编译 | 第84页 |
| ·云端编译 | 第84-85页 |
| ·实验结果与分析 | 第85-87页 |
| ·本章小结 | 第87-88页 |
| 第六章 总结与展望 | 第88-90页 |
| ·总结 | 第88-89页 |
| ·展望 | 第89-90页 |
| 致谢 | 第90-91页 |
| 参考文献 | 第91-94页 |
| 在学期间取得的与学位论文相关的研究成果 | 第94-95页 |