{"title":"基于软件的故障注入错误检测技术比较","authors":"D. S. Wilson, G. Sullivan, G. Masson, J. Bright","doi":"10.1109/WIEM.1994.654400","DOIUrl":null,"url":null,"abstract":"Object code injection is based on a bit-flip model. A software fault injector, similar in concept to that employed by FIAT and Ferrari, is used to randomly flip bits in the process image during program execution. A variety of results are possible, including abnormal program termination, creation of an infinite loop, production of incorrect output, or no observable result. Results are classified by the return value of the program being tested. A watchdog timer is used to catch cases where the injected fault results in the program not terminating during the expected run time. Bit flipping may be performed on the entire process image or limited to particular segments. Since random modifications to code segments will usually produce abnormal program termination, in some experiments injection is limited to data and/or stack segments in order to test fault detection capabilities of the above techniques on more interesting errors.","PeriodicalId":386840,"journal":{"name":"Third Int'l Workshop on Integrating Error Models with Fault Injection","volume":"3 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1994-04-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Comparison Of Error Detection Techniques Using Software-based Fault Injection\",\"authors\":\"D. S. Wilson, G. Sullivan, G. Masson, J. Bright\",\"doi\":\"10.1109/WIEM.1994.654400\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Object code injection is based on a bit-flip model. A software fault injector, similar in concept to that employed by FIAT and Ferrari, is used to randomly flip bits in the process image during program execution. A variety of results are possible, including abnormal program termination, creation of an infinite loop, production of incorrect output, or no observable result. Results are classified by the return value of the program being tested. A watchdog timer is used to catch cases where the injected fault results in the program not terminating during the expected run time. Bit flipping may be performed on the entire process image or limited to particular segments. Since random modifications to code segments will usually produce abnormal program termination, in some experiments injection is limited to data and/or stack segments in order to test fault detection capabilities of the above techniques on more interesting errors.\",\"PeriodicalId\":386840,\"journal\":{\"name\":\"Third Int'l Workshop on Integrating Error Models with Fault Injection\",\"volume\":\"3 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"1994-04-25\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Third Int'l Workshop on Integrating Error Models with Fault Injection\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/WIEM.1994.654400\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Third Int'l Workshop on Integrating Error Models with Fault Injection","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/WIEM.1994.654400","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
Comparison Of Error Detection Techniques Using Software-based Fault Injection
Object code injection is based on a bit-flip model. A software fault injector, similar in concept to that employed by FIAT and Ferrari, is used to randomly flip bits in the process image during program execution. A variety of results are possible, including abnormal program termination, creation of an infinite loop, production of incorrect output, or no observable result. Results are classified by the return value of the program being tested. A watchdog timer is used to catch cases where the injected fault results in the program not terminating during the expected run time. Bit flipping may be performed on the entire process image or limited to particular segments. Since random modifications to code segments will usually produce abnormal program termination, in some experiments injection is limited to data and/or stack segments in order to test fault detection capabilities of the above techniques on more interesting errors.