当前位置:主页 > 科技论文 > 软件论文 >

面向适航验证的并行程序调试技术研究

发布时间:2021-10-08 18:25
  航空产业和计算机技术的持续发展使得机载软件多样化和复杂化,软件规模逐渐增大并且向并行化方向发展。机载并行程序的设计在提高软件效率的同时由于自身调度的不确定性,给程序带来了一些不易检测调试的潜在异常,潜在的异常很难通过当前的调试方式得到验证和修复,导致软件调试问题日益突出,这给软件质量的保证带来了极大的挑战,难以满足软件适航的安全性和可靠性要求。本文在研究分析国内外关于并行程序调试和异常检测的基础上,面向并行的C语言程序展开研究,以实现并行程序的过程重现、变量动态跟踪定位和异常检测定位为目的。首先,基于源代码插桩技术研究设计插桩信息模板库,用于获取程序运行时的实时执行信息以及进行异常的检测判断;接下来,以并行程序中的变量为研究对象,结合变量依赖关系和变量插桩模板提出了一种轻量级插桩的变量动态跟踪定位技术,实现变量的动态跟踪,与此同时研究了与变量相关的常规异常的运行时实时检测技术;其次,为了实现并行程序的可重现调试,提出了一种基于运行时轻量化混合监控的并行程序确定性重现技术,同时提出并行异常的检测方法;最后,基于Eclipse插件开发机制设计实现了可视化的机载并行程序适航验证工具,经实例验... 

【文章来源】:南京航空航天大学江苏省 211工程院校

【文章页数】:67 页

【学位级别】:硕士

【部分图文】:

面向适航验证的并行程序调试技术研究


变量模板

实例图,变量,实例,信息


图 2. 1 变量模板 图 2. 2 获取变量信息实例.2 函数插桩模板设计并行设计提高了程序的性能,但并行执行的线程之间广泛存在着竞争、同步等因素的影响往往导致整个程序的执行结果是不确定的(如多次执行出现不同的输出),换言之线程执行确定是引发并行程序执行不确定的根源。本文在实现并行程序的可重现调试,需要对线程度信息进行记录,在分析并行程序中存在的异常时也需要获取记录程序的线程,涉及内容第四章详细介绍。研究分析并行程序中的线程对实现过程重现、异常检测具有重要意义,源程序中线程是以函数的形式存在的,在运行时若某一个函数以线程形式开启则此函数即个线程,所以从这个角度来看研究函数即研究线程。为了获取运行时函数的执行信息需要在插桩时对函数进行插桩,需要重点监控的是以线式开启的函数,为此本文设计了函数插桩模板用于获取函数的执行信息。函数模板(Function Template)用于记录要插桩的函数,函数模板 T_Function 为一个 10,其定义如下:

函数模板,插桩


南京航空航天大学硕士学位论文前的值即可;函数的访问日期、所在文件、还是行号可以分别通过预定义宏“__DATE__”“__FILE”、“__LINE__”获得;参数类型可以在插桩时通过词法语法分析获得,然后以参数的形式传递;参数值可以在插桩时通过词法语法分析获得参数名称,然后插桩时把参数名称赋给f _paravalue ;线程 ID 可以通过“winsock.h”下的“GetCurrentThreadId”函数获得;函数以线程形式开启则 f _ flag =1,否则 f _ flag =0。如下图 2.3 所示是函数模板的设计,图 2.4 是通过插桩对程序中函数Myadd 的基本信息获取,其中 global _timer 是计时器获得的当前时刻的时序。

【参考文献】:
期刊论文
[1]C程序分析工具中程序切片的设计与实现[J]. 蒋刚,李兆鹏.  小型微型计算机系统. 2018(03)
[2]一种基于硬件的快速确定性重放方法[J]. 章隆兵,李磊,肖俊华,贺晓,王剑.  高技术通讯. 2017(06)
[3]服务组合安全隐私信息流静态分析方法[J]. 彭焕峰,黄志球,刘林源,李勇,柯昌博.  软件学报. 2018(06)
[4]基于未来锁集的死锁规避[J]. 禹振,苏小红,齐鹏,马培军.  计算机研究与发展. 2017(02)
[5]基于GCC关键变量数据流分析算法的程序切片技术[J]. 杨小川,姜军,马晓东,漆锋滨.  计算机工程与应用. 2017(24)
[6]基于变量访问序模式的中断数据竞争检测方法[J]. 陈睿,杨孟飞,郭向英.  软件学报. 2016(03)
[7]C程序数组越界的运行时验证技术研究与实现[J]. 李文明,陈哲,李绪蓉,黄志球.  计算机工程与应用. 2015(11)
[8]基于锁信息的多线程软件原子性错误检测方法[J]. 王云飞,刘剑,马越.  计算机应用与软件. 2014(06)
[9]基于变量跟踪的运行时错误现场分析工具[J]. 张天炯,王铮.  计算机应用. 2014(03)
[10]面向适航认证的模型驱动机载软件构件的安全性验证[J]. 徐丙凤,黄志球,胡军,于笑丰.  航空学报. 2012(05)

博士论文
[1]并行程序中bug检测技术研究[D]. 吴振东.国防科学技术大学 2015
[2]构件化嵌入式软件安全性分析方法研究[D]. 徐丙凤.南京航空航天大学 2014
[3]高精度可靠浮点计算及舍入误差分析研究[D]. 姜浩.国防科学技术大学 2013

硕士论文
[1]机载软件安全性形式化验证方法研究[D]. 顾扬.南京航空航天大学 2017
[2]基于符号执行与区间运算的浮点异常检测[D]. 袁浩.华东师范大学 2016
[3]面向多线程程序的确定性重演研究[D]. 王昭淼.大连理工大学 2016
[4]基于未来锁集的死锁规避技术研究[D]. 齐鹏.哈尔滨工业大学 2015
[5]一种基于混合式监控机制的优化监控开销方法[D]. 徐胜.华中师范大学 2015
[6]基于区间分析的浮点计算误差估计与异常检测[D]. 刘剑.华东师范大学 2015
[7]基于事件的并行程序性能可视化系统研究与实现[D]. 卫兴武.合肥工业大学 2008



本文编号:3424714

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3424714.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户72c60***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com