CORC  > 软件研究所  > 基础软件国家工程研究中心  > 学位论文
题名基于基本块的控制流检错方法优化研究
作者肖贺
学位类别博士
答辩日期2009-01-12
授予单位中国科学院软件研究所
授予地点软件研究所
关键词软错误 控制流检测 基本块规约 性能优化
其他题名A Study on Control-flow checking performance optimization method based on Basic Blocks reduce
中文摘要系统的高可靠性是研究航空航天领域的一个重要指标. 由于太空环境的特殊性, 辐射和高能粒子会造成计算机系统的出现瞬时性错误, 这种错误被称作软错误, 它对航空航天器件造成了很大的影响, 严重降低系统的可靠性. 检测和防护这种软错误是航空航天系统中的重要研究方向之一. 软错误的检测和防护包括硬件防护与检错, 软硬件混合检错以及纯软件检错等. 随着商用器件的广泛使用, 与之相配合的各种软错误软件检错方法开始得到深入的研究, 在各种软件检错方法中, 控制流检测是抵御单粒子事件的有效手段之一.目前的主流方法是采用嵌入式签名技术, 但是该技术引入的检测指令过多, 导致程序效率低下. 本文从总结控制流检测技术的共同点出发, 分析该技术导致效率低下的原因:由于基本块定义的约束导致程序中基本块过多, 进而在代码注入过程中引入过多的判断及跳转指令, 导致程序效率低下. 本文针对这种情况, 提出了一种基于源代码分析的基本块规约的方法. 该方法通过修改基本块定义的约束, 使在新的基本块定义下每个基本块能够容纳更多的指令, 减少检测指令的注入, 提高效率;并且在新的基本块定义下, 原来的控制流检错方法仍可以不加修改的直接应用于新的基本块定义上. 该方法能在不修改benchmark源代码以及控制流检测方法的基础上, 选择合适的约束量重新划分基本块, 减少引入的检测指令. 本文中使用该方法以ECCA, CFCSS和RSCFC三个控制流检错方法作为验证对象, 使用这3种控制流检错方法, 在不同的约束量作用下, 对8个常见算法的benchmark进行了软错误覆盖率测试和效率测试. 多次实验数据表明, 该方法在提高检错算法效率的同时, 能够保持软错误检错的覆盖率基本不变. 在对控制流检错算法进行优化的同时, 本文还完成了相应的控制流分析工具, 基于模拟器的错误注入和代码片段执行时间检测工具等. 有效的对优化算法进行了评估和测试.
英文摘要High-Reliablility is an important indicator in aerospace area. As the special nature of the space environment, transient error can be generated by radiation and the high-energy particles, this kind of error is called soft error, they make big influence on computer system, and reduce the reliability of the aero components. Soft error detection and prevention is an important research area in the aerospace area. With the widespread use of commercial devices, many kinds of soft error detection in software methods have been deeply studied. Belong all the methods of soft error detection in software methods, the control flow detection which was used to resist Single Event Upset is one of the effective techniques. The current mainstream methods in this technology called embedded signature, but the methods involved too much detecting instructions, leading to inefficient procedures. This Thesis analysis the reason leading to low efficiency and introduce an new technology to reduce Basic Blocks. By modifying the restriction of the Basic Block, the methods make the new Basic Block bigger to accommodate more instructions, thereby reducing the detected instruction injection, to improve efficiency. This method can choose a suitable re-bound volume of the basic block and reduce the introduction of the test instructions, without modified the source code of the benchmark, so that the original control flow detection methods can still apply to the benchmark. In this thesis, we use the method to ECCA, CFCSS and RSCFC control flow detection methods as a validation, under the soft error coverage testing and efficiency testing of eight algorithm benchmarks. The experimental data show that this method can improve the efficiency of the benchmark with the coverage of the soft error detection rate unchanged.
语种中文
公开日期2011-03-17
页码82
内容类型学位论文
源URL[http://124.16.136.157/handle/311060/5998]  
专题软件研究所_基础软件国家工程研究中心_学位论文
推荐引用方式
GB/T 7714
肖贺. 基于基本块的控制流检错方法优化研究[D]. 软件研究所. 中国科学院软件研究所. 2009.
个性服务
查看访问统计
相关权益政策
暂无数据
收藏/分享
所有评论 (0)
暂无评论
 

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。


©版权所有 ©2017 CSpace - Powered by CSpace