共查询到16条相似文献,搜索用时 78 毫秒
1.
星载嵌入式系统要求更小的功耗和必备的在空间辐射环境中运行的高可靠性,控制流检测技术是防止由于单粒子翻转事件而造成程序错误运行的有效手段之一。为了在低功耗模式下保证错误检测概率,提出一种基于控制流检测的低功耗基本块划分方法,此基本块划分方法在编译后期完成,不影响编译调度效果。采用GCC、SDCC两款编译器,将三种具有代表性的控制流检测算法注入到典型的程序集中进行测试。实验证明,此种基本块划分方法在保证错误检测概率的条件下,降低了程序运行功耗。 相似文献
2.
一种基于格式化标签的可扩展控制流检测方法 总被引:1,自引:0,他引:1
硬件瞬态故障是运行于高辐照宇宙环境下的航天计算机面临的最主要挑战之一.其中,控制流错误是这种故障影响系统可靠性的重要体现.首先在程序控制流图的基础上,利用图着色算法对基本块进行分类,然后基于基本块的格式化标签提出一种有效的控制流检测方法ECCFS,并针对基本块内部和过程间两个控制流检测问题分别给出其扩展解决方法.检测效能分析和故障注入实验的结果都表明,除了伪分支和几个边界检测盲点之外,ECCFS能够检测出绝大部分的控制流错误.与两个有代表性的控制流检测方法相比较,ECCFS在错误检测率和性能开销等方面都具有一定的优势. 相似文献
3.
控制流检测是抵御单粒子事件的有效手段之一.目前的主流方法是采用嵌入式签名技术, 但是该技术引入的检测指令过多, 导致程序效率低下. 本文使用基本块规约的技术, 在原基本块的基础上, 选择合适的约束量重新划分基本块, 减少引入的检测指令. 与8个常见算法的性能比较表明, 该方法在软错误检测覆盖率基本不变的前提下,能有效提高目标程序效率. 相似文献
4.
设计一个实用的程序控制流分析工具需要解决非结构程序中goto等语句的控制流图构造问题。C语言程序控制流图生成器CfgGen的设计采用基于基本块标识的控制流图构造方法解决该问题。CfgGen程序基于规则,通过语法制导翻译标识基本块、构造控制流图,易移植和维护。CfgGen构造的控制流图标识了基本块,可以很方便地用于程序分析和优化。 相似文献
5.
一种软硬件结合的控制流检测与恢复方法 总被引:1,自引:0,他引:1
控制流检测可以有效地提高微处理器容错能力.针对传统软件实现的控制流检测时空开销大的缺点,提出了一种软硬件结合的控制流检测与恢复方法.该方法通过编译自动插入签名数据,由硬件在分支/跳转指令之后自动执行检测,并且提供了硬件现场保存和恢复机制,检测到控制流错误后无需复位系统即可以快速恢复正常控制流.基于8051体系结构实现了软硬件结合的控制流检测与恢复方法,实验结果表明与传统的软件控制流检测相比,该方法在保持相同的错误检测率的情况下,可以大幅减小二进制代码量和额外的性能开销,在发生控制流错误以后可以快速恢复正常控制流. 相似文献
6.
并发控制流检测技术是防止由于单粒子反转事件而导致运行系统发生故障的有效手段,目前主要采用以控制流图为基础的结点签名技术。本文首先介绍并发控制流检测技术的分类标准;然后按照技术发展的脉络,从软硬结合、纯软件两方面介绍控制流检测技术的典型方法,对其进行分析评价;最后提出基于目前的方法并发控制流检测技术还需要解决的问题及新的发展方向。 相似文献
7.
为了避免当计算机系统的内部器件发生瞬时或永久性的故障时程序的执行流程发生错误,提出了一种基于插入块的控制流错误检测方法——CFCIB方法.该方法分析程序的控制流图,利用插入新基本块的方式消除混淆错误,在每个基本块的开头和末尾分别插入test和set断言来完成对可执行程序的控制流错误检测.实验结果表明,该方法能将原始程序的平均错误覆盖率从84.31%提升到96.78%. 相似文献
8.
《计算机学报》2014,(11)
空间辐射环境中,大量的宇宙射线经常导致星载计算机出现瞬时故障,这些故障的主要影响之一是引发程序控制流错误.文中提出了一种软件实现的控制流检测方法CFCAF.CFCAF基于插入虚拟基本块后的控制流图对基本块分类,并为基本块设计格式化标签,然后在基本块内插装标签更新、比较指令,实现对基本块之间、基本块内和过程间调用的控制流检测.CFCAF的特点是可以根据可靠性和性能的需求进行灵活配置.对CFCAF及目前有代表性的两个同类算法进行的故障注入实验结果表明,CFCAF算法以平均41.7%的性能代价和平均34%的空间代价,使程序的平均失效率降到了5.2%,在3个同类算法中,CFCAF算法具有较低的时空开销和最高的可靠性. 相似文献
9.
10.
11.
暴露在太空辐射环境下的星载计算机,其电子元器件可能因受到高能带电粒子的轰击而造成硬件系统的瞬时故障,所以,需要使用容错技术来提高其可靠性。对一种面向硬件瞬时故障的纯软件控制流检测算法RSCFC(Relationship Signatures for Control Flow Checking)进行了有效的改进,通过对标签S进行分段编码,克服了原算法中存在的待加固程序的基本块总数受机器字长限制的问题,并给出了具体的计算证明。计算结果表明,如果机器字长为64位,那么改进后的算法在设定前提下能单层加固程序的最大基本块数可以超过218。与RSCFC相比,改进后的算法在加固基本块总数比较大的程序时,性能开销明显降低而且检错能力保持不变。 相似文献
12.
13.
无论是可靠性工程还是软件可靠性中的可靠性模型,都难以描述硬件故障在程序中的传播问题.首先建立了计算数据流模型,并以无穷存储机器的指令集为例,说明可以为任意程序建立计算数据流图.在计算数据流模型的基础上,进一步建立了错误流模型.把计算过程中的错误分成物理错误和传播错误两种,通过分析这两种错误的本质和传播规律,给出了6条有关错误传播的规则和2条独立定律.根据这些规则和定律,能够计算出在程序运行过程中,任意时刻在任意位置上出现错误的概率.最后以一个简单的无穷存储机器程序为例,简要地展示了错误流模型描述硬件故障在 相似文献
14.
为解决信息系统中的非授权间接访问问题,提出一种基于信息流图的共谋访问风险控制模型。通过记录系统的历史访问行为构建信息流图,在此基础上定义共谋访问行为,同时基于状态机定义访问控制模型,利用安全性定理和规则防止共谋访问的发生,并对规则做安全性证明。根据信息熵理论对模型的有效性进行分析和验证,结果证明该模型可有效防止共谋访问的发生。 相似文献
15.
16.
提出一种利用多层分段标签实现的控制流错误检测技术CFMSL,可通过对多层分段标签的更新和检查在线检测出程序的控制流错误。CFMSL在编译时将标签更新与检查指令自动嵌入程序中,从而实现程序运行时的动态检查效果。本文提出的标签设计与计算方法较为新颖,可较大地降低方法的时空开销,并且具有处理复杂程序以及检测细微控制流错误的能力。通过编写的LLVM pass文件,CFMSL具备批量化、自动化处理程序的能力。最后使用本文设计的故障注入工具模拟控制流错误对软件的影响,同时评估CFMSL的错误检测能力与时空开销。实验结果表明,相较于其他方法,CFMSL在保证较高检错能力的同时具有较低时空开销,显示出了本文提出的方法的优越性。 相似文献