论文题目: 并发程序调试的追踪/重演机制研究
论文类型: 硕士论文
论文专业: 计算机软件与理论
作者: 曾奕
导师: 徐宝文
关键词: 并发程序,进程,消息传递,通信,追踪,重演,检查点,消息记录
文献来源: 东南大学
发表年度: 2005
论文摘要: 随着实际应用对并发软件需求的不断增加,并发程序的分析、理解、调试、测试和维护已经引起人们的广泛关注。并发程序由多个异步推进的并行成分组成,由于进程调度顺序以及通信机制本身的特性,使得程序在相同输入的不同执行中呈现不同的结果。这种并发程序执行的不确定性直接导致了程序错误的不可再现性,即后续的执行无法再现前次执行的错误。于是,以反复执行程序、重复再现故障为核心的传统循环调试方法变得不再可用。再现程序的执行行为是并发程序调试的重要问题。因此,我们将传统的循环调试方法加以扩充,引入追踪和重演的机制重放程序的某次执行,消除错误的不可再现性。我们分析了进程间消息传递的依赖关系,并阐述了消除并发程序执行不确定性的优化的追踪算法。同时,对于大型的并发程序,在调试过程中,如果每次重演都从程序的最开始执行,势必会造成资源的大量浪费,并且不能够满足程序员对调试响应速度的要求。针对这一问题,我们采用渐增式追踪/重演方法,引入容错系统中的检查点技术,在并发程序的追踪执行过程中周期性地插入独立式检查点,记录下各个进程的执行状态,并将进程分割成若干相互独立的检查点间隔。从而在重演的阶段,程序员可以任意地从自己感兴趣的检查点开始,反复重现程序的某段执行,直到发现错误的问题所在。在理论研究的基础上,我们研究和开发了并发程序分析和调试的辅助工具,包括并发程序的追踪/重演模块和进程执行轨迹的可视化引擎,适用于C语言编写的进程间以消息传递为主要通信机制的并发程序。并发程序的追踪/重演工具能够追踪程序的原始执行,并通过设立检查点记录各进程的执行状态,在重演的阶段可以有选择地重现程序的某执行片断;可视化引擎将并发进程的执行轨迹、检查点位置以及进程间的通信关系以简洁的图形方式显示给用户。
论文目录:
摘要
Abstract
第一章 绪论
1.1 选题依据
1.2 拟开展的研究内容
1.3 论文结构
第二章 并发程序的相关概念
2.1 进程
2.2 进程间的通信
2.2.1 管道
2.2.2 消息队列
2.2.3 共享内存
2.2.4 远端过程调用
2.2.5 邮件槽
2.3 并发程序执行的不确定性
2.3.1 消息队列
2.3.2 共享内存
2.4 程序分析技术
2.4.1 程序流图
2.4.2 并发程序控制流图
第三章 不确定性的消除
3.1 基本思想
3.2 系统模型定义
3.3 优化的追踪算法
3.3.1 竞态消息
3.3.2 竞态消息的检测算法
3.4 确定性执行的重演算法
第四章 渐增式追踪/重演机制
4.1 检查点和消息记录
4.1.1 检查点和消息记录的介绍
4.1.2 调试环境与容错系统的比较
4.2 系统模型定义
4.3 渐增式追踪/重演算法
4.3.1 多米勒消息
4.3.2 多米勒消息判定算法
4.3.3 重演依赖集合
4.3.4 重演算法
第五章 系统的设计与实现
5.1 C 分析子系统
5.1.1 词法、语法分析器生成工具
5.1.2 公共信息库
5.2 关系提取模块
5.3 可视化引擎模块
5.4 追踪和重演模块
5.4.1 系统函数简介
5.4.2 封装功能函数
5.4.3 数据结构与算法
5.5 用户界面
第六章 结束语
致谢
参考文献
附录一 攻读硕士学位期间完成的论文
附录二 攻读硕士学位期间参加的科研项目列表
详细摘要
江苏省优秀硕士学位论文推荐表
发布时间: 2007-06-11
参考文献
- [1].基于变体的并发程序测试及其实验研究[D]. 颉佳宇.东南大学2017
- [2].基于并发程序切片的修改影响分析[D]. 张欢.东南大学2017
- [3].基于变体的并发程序测试技术研究[D]. 周华杨.东南大学2015
- [4].一个自适应的并发程序测试框架[D]. 吴熳娜.浙江大学2010
- [5].并发程序原子图挖掘及违背检测[D]. 朱一清.上海交通大学2012
- [6].可信软件并发正确性测试技术的研究与应用[D]. 李桢.广东工业大学2014
- [7].面向并发程序数据竞争故障的变异策略研究[D]. 吴俞伯.北京化工大学2016
- [8].短信平台中消息传递技术的研究与实现[D]. 李军.西安电子科技大学2007
- [9].面向对象并发程序切片技术及其在程序验证中的应用[D]. 何志学.苏州大学2008
- [10].基于JDT的并发程序错误模式检测工具设计与实现[D]. 封煜佳.南京大学2011
相关论文
- [1].并发程序原子图挖掘及违背检测[D]. 朱一清.上海交通大学2012
- [2].一个自适应的并发程序测试框架[D]. 吴熳娜.浙江大学2010
- [3].Java并发程序的模型提取与模型检测技术研究[D]. 周志远.湖南大学2009
- [4].基于回放分析的并发错误重现与检测[D]. 罗清宙.上海交通大学2010
- [5].基于事件约束的并发程序测试方法研究[D]. 王静.华中科技大学2007
- [6].机群系统并行程序调试器的设计与实现[D]. 李永强.解放军信息工程大学2007
- [7].嵌入式同步调试系统的设计与实现[D]. 黄晓智.电子科技大学2006
- [8].构件系统回归测试模型与技术研究[D]. 解凯.东南大学2006
- [9].基于重放的并发程序调试技术研究[D]. 左赋斌.东南大学2005
- [10].可视化并行性能调试环境的设计与实现[D]. 林贻珀.清华大学2005