用户态内存管理关键技术研究
摘要 | 第5-6页 |
Abstract | 第6页 |
第1章 绪论 | 第10-14页 |
1.1 课题背景 | 第10-11页 |
1.2 国内外研究现状 | 第11-12页 |
1.3 课题研究的目的和意义 | 第12页 |
1.4 论文研究内容和组织结构 | 第12-14页 |
第2章 用户态内存管理相关技术 | 第14-26页 |
2.1 内存管理基础 | 第14-16页 |
2.1.1 用户态和内核态 | 第14页 |
2.1.2 程序内存布局 | 第14-15页 |
2.1.3 内存分配策略 | 第15-16页 |
2.2 内存池 | 第16-19页 |
2.2.1 常见内存池 | 第16-18页 |
2.2.2 内存池设计方法比较 | 第18-19页 |
2.3 内存泄漏检测 | 第19-24页 |
2.3.1 内存泄漏定义 | 第19页 |
2.3.2 内存泄漏原因 | 第19页 |
2.3.3 内存泄漏检测方法 | 第19-20页 |
2.3.4 垃圾回收器 | 第20-21页 |
2.3.5 Insure++ | 第21页 |
2.3.6 Puriy | 第21-22页 |
2.3.7 valgrind工具 | 第22-23页 |
2.3.8 垃圾回收机制 | 第23页 |
2.3.9 内存泄露检测方法比较 | 第23-24页 |
2.4 本章小结 | 第24-26页 |
第3章 一种内存池设计方法 | 第26-40页 |
3.1 引言 | 第26页 |
3.2 有效的条件 | 第26页 |
3.3 用户态内存管理方法 | 第26-32页 |
3.3.1 方法概述 | 第26-28页 |
3.3.2 组织结构变化 | 第28页 |
3.3.3 初始化算法 | 第28-29页 |
3.3.4 内存块申请算法 | 第29-31页 |
3.3.5 内存块释放算法 | 第31-32页 |
3.3.6 多线程支持 | 第32页 |
3.4 仿真结果与分析 | 第32-39页 |
3.4.1 仿真环境 | 第32-33页 |
3.4.2 仿真程序设计 | 第33-38页 |
3.4.3 仿真结果分析 | 第38-39页 |
3.5 本章小结 | 第39-40页 |
第四章 一种内存泄漏检测方法 | 第40-50页 |
4.1 引言 | 第40页 |
4.2 有效的条件 | 第40页 |
4.3 内存泄漏检测方法 | 第40-45页 |
4.3.1 操作函数劫持 | 第40-42页 |
4.3.2 申请释放操作记录 | 第42-43页 |
4.3.3 内存泄漏定位 | 第43-44页 |
4.3.4 黑名单 | 第44-45页 |
4.3.5 多线程支持 | 第45页 |
4.4 仿真与结果分析 | 第45-48页 |
4.4.1 仿真环境 | 第45-46页 |
4.4.2 仿真程序设计 | 第46-47页 |
4.4.3 仿真结果分析 | 第47-48页 |
4.5 本章小结 | 第48-50页 |
第5章 系统设计与实现 | 第50-56页 |
5.1 内存池设计概述 | 第50-53页 |
5.1.1 主要结构体 | 第50页 |
5.1.2 内存块申请和释放 | 第50-52页 |
5.1.3 内存池函数与接口 | 第52-53页 |
5.2 内存泄漏检测设计概述 | 第53-55页 |
5.2.1 主要结构体 | 第53-54页 |
5.2.2 内存泄漏检测处理流程 | 第54-55页 |
5.2.3 内存泄漏检测接口 | 第55页 |
5.3 本章小结 | 第55-56页 |
结论 | 第56-57页 |
参考文献 | 第57-60页 |
攻读硕士学位期间发表的论文和取得的科研成果 | 第60-61页 |
致谢 | 第61页 |