基于函数建模的面向路径自动打桩方法研究
摘要 | 第4-5页 |
ABSTRACT | 第5页 |
第一章 绪论 | 第9-16页 |
1.1 研究背景 | 第9页 |
1.2 研究现状 | 第9-12页 |
1.2.1 路径选择 | 第10页 |
1.2.2 符号执行 | 第10页 |
1.2.3 区间计算 | 第10-11页 |
1.2.4 约束求解 | 第11页 |
1.2.5 插装技术 | 第11-12页 |
1.3 研究内容 | 第12-14页 |
1.4 论文结构 | 第14-16页 |
第二章 打桩相关技术综述 | 第16-22页 |
2.1 环境交互问题概述 | 第16页 |
2.2 相关技术概述 | 第16-18页 |
2.2.1 符号执行技术 | 第16-17页 |
2.2.2 内存建模技术 | 第17页 |
2.2.3 过程间调用处理 | 第17-18页 |
2.2.3.1 函数摘要 | 第17页 |
2.2.3.2 环境建模 | 第17-18页 |
2.2.3.3 函数打桩 | 第18页 |
2.3 打桩概述 | 第18-19页 |
2.3.1 路径不敏感的打桩 | 第18-19页 |
2.3.2 路径敏感的打桩 | 第19页 |
2.4 CTS代码测试系统 | 第19-21页 |
2.5 本章小结 | 第21-22页 |
第三章 函数建模技术研究 | 第22-34页 |
3.1 概述 | 第22页 |
3.2 变量存储模型VTABLE | 第22-25页 |
3.2.1 数值类型 | 第23页 |
3.2.2 结构体类型 | 第23-24页 |
3.2.3 指针类型 | 第24页 |
3.2.4 数组类型 | 第24-25页 |
3.2.5 N层变量模型 | 第25页 |
3.3 函数存储模型FTABLE | 第25-27页 |
3.3.1 实参变量存储模型MATABLE | 第26-27页 |
3.4 函数调用语义模拟分析 | 第27-31页 |
3.4.1 调用总体流程 | 第27-28页 |
3.4.2 实参语义模拟 | 第28-29页 |
3.4.3 返回值语义模拟 | 第29-30页 |
3.4.4 全局变量语义模拟 | 第30-31页 |
3.5 实例分析 | 第31-33页 |
3.6 本章小结 | 第33-34页 |
第四章 基于函数建模的面向路径打桩 | 第34-42页 |
4.1 路径约束条件概述 | 第34-35页 |
4.1.1 控制流图 | 第34页 |
4.1.2 约束 | 第34-35页 |
4.1.3 约束求解器 | 第35页 |
4.2 约束系统 | 第35-37页 |
4.2.1 约束系统模型 | 第36页 |
4.2.2 约束提取流程 | 第36-37页 |
4.2.3 约束系统实例 | 第37页 |
4.3 打桩算法实现 | 第37-40页 |
4.3.1 算法实现 | 第39-40页 |
4.4 实例分析 | 第40-41页 |
4.5 本章小结 | 第41-42页 |
第五章 实验结果与分析 | 第42-44页 |
5.1 实验环境 | 第42页 |
5.2 打桩实验与结果分析 | 第42-43页 |
5.3 本章小结 | 第43-44页 |
第六章 结束语 | 第44-46页 |
6.1 论文总结 | 第44页 |
6.2 进一步研究工作与问题思考 | 第44-46页 |
6.2.1 I/O函数的打桩 | 第45页 |
6.2.2 函数指针的打桩 | 第45-46页 |
致谢 | 第46-47页 |
参考文献 | 第47-50页 |
作者攻读学位期间发表论文 | 第50页 |