绵阳师范学院学报
綿暘師範學院學報
면양사범학원학보
JOURNAL OF MIANYANG NORMAL UNIVERSITY
2014年
8期
95-99
,共5页
程序错误检测%控制流错误%软件检测%基本模块%非法跳转
程序錯誤檢測%控製流錯誤%軟件檢測%基本模塊%非法跳轉
정서착오검측%공제류착오%연건검측%기본모괴%비법도전
program error detection%control flow error%software detection%basic module%illegal jump
该文武介绍了一种检测软件控制流错误的方法,阐述了该方法的原理,给出了具体的实现方案和测试结果。本方法在RSCFC方法的基础上,通过把程序划分为若干个基本模块并分别为每个模块设定静态标记,在每个基本模块的首部和尾部分别加上相应的测试和设置指令,在程序运行时通过比较运行时生成的动态标记和编译时确定的静态标记是否匹配来检测程序控制流错误。本方法和RSCFC方法相比的优点在于:使用相同长度的标记可以编码更多的基本模块;在基本模块的起始处和结束处都进行错误检测,错误覆盖率高;可以在发生错误的当前基本模块检测出所有的单个控制流错误,不会延迟到控制流进入下一个基本模块。
該文武介紹瞭一種檢測軟件控製流錯誤的方法,闡述瞭該方法的原理,給齣瞭具體的實現方案和測試結果。本方法在RSCFC方法的基礎上,通過把程序劃分為若榦箇基本模塊併分彆為每箇模塊設定靜態標記,在每箇基本模塊的首部和尾部分彆加上相應的測試和設置指令,在程序運行時通過比較運行時生成的動態標記和編譯時確定的靜態標記是否匹配來檢測程序控製流錯誤。本方法和RSCFC方法相比的優點在于:使用相同長度的標記可以編碼更多的基本模塊;在基本模塊的起始處和結束處都進行錯誤檢測,錯誤覆蓋率高;可以在髮生錯誤的噹前基本模塊檢測齣所有的單箇控製流錯誤,不會延遲到控製流進入下一箇基本模塊。
해문무개소료일충검측연건공제류착오적방법,천술료해방법적원리,급출료구체적실현방안화측시결과。본방법재RSCFC방법적기출상,통과파정서화분위약간개기본모괴병분별위매개모괴설정정태표기,재매개기본모괴적수부화미부분별가상상응적측시화설치지령,재정서운행시통과비교운행시생성적동태표기화편역시학정적정태표기시부필배래검측정서공제류착오。본방법화RSCFC방법상비적우점재우:사용상동장도적표기가이편마경다적기본모괴;재기본모괴적기시처화결속처도진행착오검측,착오복개솔고;가이재발생착오적당전기본모괴검측출소유적단개공제류착오,불회연지도공제류진입하일개기본모괴。
This paper introduces a method for detecting software control flow error,the principle,concrete imple-mentation and test result is given. Based on RSCFC method,our proposed method divides program into basic modules, sets static markup for each module respectively,inserts test and set instructions in header and tail of each module. For detecting control flow error,the proposed method compares dynamic mark generated at run time and static mark genera-ted at compile time,if they are not match,the control flow error is occurred. Compared to the RSCFC method,the ad-vantages of this method are:use the same length markers to code more basic modules;detect error in the beginning and at the end of the basic module so error coverage rate is higher;detect all single control flow errors in the current basic module,do not delay to the time when control flow into the next basic module.