改进的CFCSS控制流检测算法
2011-04-13李静梅吴艳霞沈晶张健沛
哈尔滨工程大学学报 2011年6期
李静梅,吴艳霞,沈晶,张健沛
(哈尔滨工程大学 计算机科学与技术学院,黑龙江 哈尔滨 150001)
空间辐射环境中,宇宙射线、地磁俘获辐射带、太阳质子事件都能导致航天器电子系统中的半导体器件发生单粒子效应,单粒子效应引发的瞬时故障严重影响航天器的可靠性和寿命.这些带电粒子在航天器电子系统中产生的瞬时扰动即使持续时间很短,但对某些应用系统,可能是致命的破坏.1997年1月11日美国的Telstar401卫星,因太阳引起的空间环境扰动而损坏,导致北美的寻呼机和长途电话大面积发射中断,不良影响甚至波及到了金融、股票市场的正常运行.研究表明在1992至2011年间,组合电路中的瞬时故障率将增加9个数量级[1].
从上面的论述不难看出,微处理器瞬时故障问题正日益彰显,是研究人员关注的热点问题.单粒子翻转(single event upset,SEU)[2-3]、单粒子瞬态脉冲效应(single event transient,SET)[4-5]等瞬时故障,会导致运行程序的数据流、指令流及控制流错误,但几率最大、危害最大的是改变指令序列执行顺序的控制流错误[6].
文中首先分析总结了控制流检测算法的原理,其次,分析CFCSS算法原理[7-8],并简述其中存在的检测混淆和检测出错现象的原因;最后,根据CFCSS算法中存在的问题,修改了基础基本块的选择方法和多调整签名值赋值语句的插入位置,提出了改进的ICFCSS算法(improved CFCSS).
1 控制流图与基本块
为了方便描述控制流检测算法,在此引入几个定义.
定义1 控制流图(control flow graph,CFG)可表示为G={V,E},V={vi|vi为控制流基本块,1≤i≤n,n为控制流基本块号……
登录APP查看全文
