声明
摘要
第一章 绪论
1.1 研究动因
1.2 当前的研究现状
1.2.1 国外的研究现状
1.2.2 国内的研究现状
1.2.3 存在的问题
1.3 本文的研究目标与工作
1.4 论文的组织结构
第二章 研究基础
2.1 模型检测方法
2.1.1 模型检测的过程
2.1.2 Buchi自动机
2.1.3 时态逻辑
2.1.4 应对状态空间爆炸的策略
2.2 SPIN模型检测工具
2.2.1 SPIN的结构
2.2.2 SPIN的原理
2.3 Promela的语法
2.3.1 关键字与数据结构
2.3.2 表达式和语句
2.3.3 控制流
2.3.4 进程
2.4 Promela与C语言的比较
2.5 本章小结
第三章 基于模型检测技术的源代码验证方法
3.1 基于模型检测技术的源代码验证原理
3.2 从源代码到CFG的转换方法
3.2.1 C源代码到自定义结构AST的转换
3.2.2 通过AST生成CFG
3.3 从CFG到Promela语言的转换方法
3.3.1 数据类型的转换规则
3.3.2 运算符和语句的转换规则
3.3.3 控制结构的转换规则
3.3.4 指针相关的转换规则
3.3.5 函数的转换方法
3.3.6 CFG到Promela转换的算法
3.4 本章小结
第四章 实验结果及分析
4.1 实验所用示例程序
4.2 生成示例程序的CFG
4.3 根据CFG生成Promela表示
4.4 基于SPIN的性质验证
4.5 本章小结
第五章 总结和展望
5.1 本文工作的总结
5.2 进一步的研究工作
参考文献
在校期间参加的科研项目和发表的论文
致谢