CN101334754A - 基于故障注入的嵌入式系统测评方法 - Google Patents

基于故障注入的嵌入式系统测评方法 Download PDF

Info

Publication number
CN101334754A
CN101334754A CNA2008100634459A CN200810063445A CN101334754A CN 101334754 A CN101334754 A CN 101334754A CN A2008100634459 A CNA2008100634459 A CN A2008100634459A CN 200810063445 A CN200810063445 A CN 200810063445A CN 101334754 A CN101334754 A CN 101334754A
Authority
CN
China
Prior art keywords
fault
interface
failure
parameter
performance
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2008100634459A
Other languages
English (en)
Inventor
陈纯
卜佳俊
杨智
徐晓露
尹朦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang University ZJU
Original Assignee
Zhejiang University ZJU
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang University ZJU filed Critical Zhejiang University ZJU
Priority to CNA2008100634459A priority Critical patent/CN101334754A/zh
Publication of CN101334754A publication Critical patent/CN101334754A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于故障注入的嵌入式系统测评方法。根据嵌入式系统平台分层模型,利用硬件接口和操作系统接口实现故障注入;故障注入后,定性分析系统在异常状况下的表现情况,采用从系统失效和任务失效两个方面来测评系统表现。利用嵌入式平台接口实施故障注入,从而有效地模拟硬件故障,操作系统层故障以及应用层故障。故障注入后,通过观测被测平台在一些故障条件下的失效表现,从而测评系统容错能力和应对异常能力,并有助于对失效表现进行故障预测。将这种测试方法用于嵌入式系统测试,可以有效地模拟现实中的故障,分析系统失效表现,测评系统可靠性。

Description

基于故障注入的嵌入式系统测评方法
技术领域
本发明涉及嵌入式系统平台测试领域,特别是涉及一种基于故障注入的嵌入式系统测评方法。
背景技术
软件测试是提高软件可靠性和保障软件质量的重要手段。传统的软件测试方法有黑盒测试、白盒测试以及灰盒测试等。在这些传统的软件测试技术中,由于被测程序的复杂性以及测试环境相关原因,我们往往很难测试程序的所有分支。而且对于有容错功能的软件的异常处理和故障恢复代码的测试尤其困难,使得这些代码中可能包含软件故障,反而成为软件质量的隐患。嵌入式系统软件的测试与通用软件测试既有相同点也有所不同,嵌入式软件测试由于其自身的特点,使得嵌入式软件的开发和测试与一般的软件开发和测试策略有很大的不同。
故障注入是一种有效的用于容错计算机系统验证的技术,也是一种通过试验来测评容错机制,验证系统应对异常能力,从而提高系统可靠性的有效办法。进行故障注入试验,首先应当确定故障注入实验的输入域和输出域。故障注入方法有硬件故障注入和软件故障注入两种。软件实现的故障注入提供了廉价和易于控制的故障注入方法,无需额外的硬件设备,可以在程序指令能够访问到的硬件或软件上选择故障注入位置。作为近年来新兴实验技术手段,软件的故障注入方法有着代价低、灵活度高、具有可再现性等优点成为被广泛采用。
发明内容
本发明的目的在于提供一种基于故障注入的嵌入式系统测评方法。重点观察被测对象在异常条件和无效参数下的表现情况。
本发明解决其技术问题采用的技术方案如下:
1)根据嵌入式系统平台分层模型,利用硬件接口和操作系统接口实现故障注入,注入方式有两种:
(1)改变系统内部状态,通过程序调用接口对访问系统内部参数变量的修改,从而注入故障;
(2)修改接口参数,是通过设置接口的异常参数和设置接口的内部函数的异常参数这两种方式;其中内部函数指外部接口所调用的函数,异常参数包括无效参数或非法参数;
2)故障注入后,定性分析系统在异常状况下的表现情况,采用从系统失效和任务失效两个方面来测评系统表现。
采用改变系统内部状态的故障注入方式,为CPU、存储设备和网络设备的故障都能通过改变存储元素的值来得到测评。
本发明与背景技术相比,具有的有益的效果是:
利用嵌入式平台接口实施故障注入,从而有效地模拟硬件故障,操作系统层故障以及应用层故障。故障注入后,通过观测被测平台在一些故障条件下的失效表现,从而测评系统容错能力和应对异常能力,并有助于对失效表现进行故障预测。将这种测试方法用于嵌入式系统测试,可以有效地模拟现实中的故障,分析系统失效表现,测评系统可靠性。
具体实施方式
本发明提出的这种基于故障注入的嵌入式系统测评方法主要按如下步骤进行:
1.确定要注入的故障模型:
该步骤定义对待测容错机制的输入,并将生成的模型传递给执行注入步骤,故障模型的属性包括故障类型、发生时刻、持续期、位置等。
2.执行故障注入:
该步骤接收“选择故障模型”步骤中生成的故障模型并将该模型转换为可应用于故障注入的故障形式。根据故障形式,采用改变系统内部状态或者修改接口参数这两种方法注入故障。改变系统内部状态是通过程序调用接口对访问系统内部参数变量的修改,从而注入故障;修改接口参数是通过设置接口的异常参数和设置接口的内部函数的异常参数这两种方式。
3.监视系统行为并分析试验结果:
关注系统或者任务的不同失效表现,将系统失效分成灾难性崩溃、重启崩溃、异常中断崩溃、沉寂崩溃、阻碍性崩溃五种表现,任务失效分成任务停顿、任务暂停、延迟输出和无效输出四种表现,分别记录各种失效次数,分析各种失效表现的故障源。
其中系统失效的五种失效表现如下:
(1)灾难性崩溃:指这种失效能引起整个系统停止工作,要求机器重启;
(2)重启崩溃:由监视器定时程序检测到的崩溃;
(3)异常中断崩溃:是指测试进程不正常的中断;
(4)沉寂崩溃:指当执行非法输入时,本应返回相应的错误处理代码,结果却没有指示;
(5)阻碍性崩溃:指虽然返回了错误处理代码,但错误处理代码与相应的非法数据输入并不符合。
任务失效的四种失效表现如下:
(1)任务停顿:崩溃,或任务被停止处理;
(2)任务暂停:错误导致任务停止有效处理;
(3)延迟输出:发生在软件故障导致任务需要的输出超过可接受的时间范围;
(4)无效输出:软件故障导致任务释放错误输出。
本发明已在自主开发的基于Blackfin的嵌入式系统平台上进行试验。试验中采用如下故障模型:
Figure A20081006344500051
故障类型分为硬件故障、通信故障和软件故障三种。硬件故障为内存故障、寄存器故障、总线故障以及NAND Flash故障,通信故障主要为网络故障,软件故障分为驱动故障和应用层故障。故障注入点主要为硬件接口、OS接口以及应用层的高层注入。
接着观察系统在上述故障模型下的失效表现,说明这种结果测评方法。
  故障类型   失效表现   失效率%
  内存故障   灾难性崩溃、异常中断崩溃   26.7
  寄存器故障   灾难性崩溃   85.7
  总线故障   异常中断崩溃、重启崩溃、延迟输出   80
  NAND Flash故障   无失效表现   0
  网络故障   延迟输出   16.7
  驱动故障   重启崩溃、异常中断崩溃   68.6
  应用程序故障   重启崩溃、异常中断崩溃、无效输出   20.5
其中失效率计算方法为:失效率=失效次数/故障注入次数
试验结果表明,试验中用的嵌入式平台能有效地模拟并加速硬件故障,操作系统层故障以及应用层故障。故障注入后,通过失效表现和失效率来测评系统容错能力和应对异常能力,并对失效表现进行故障预测。

Claims (2)

1.一种基于故障注入的嵌入式系统测评方法,其特征在于:
1)根据嵌入式系统平台分层模型,利用硬件接口和操作系统接口实现故障注入,注入方式有两种:
(1)改变系统内部状态,通过程序调用接口对访问系统内部参数变量的修改,从而注入故障;
(2)修改接口参数,是通过设置接口的异常参数和设置接口的内部函数的异常参数这两种方式;其中内部函数指外部接口所调用的函数,异常参数包括无效参数或非法参数;
2)故障注入后,定性分析系统在异常状况下的表现情况,采用从系统失效和任务失效两个方面来测评系统表现。
2.根据权利要求1所述的基于故障注入的嵌入式系统测评方法,其特征在于:采用改变系统内部状态的故障注入方式,为CPU、存储设备和网络设备的故障都能通过改变存储元素的值来得到测评。
CNA2008100634459A 2008-08-05 2008-08-05 基于故障注入的嵌入式系统测评方法 Pending CN101334754A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2008100634459A CN101334754A (zh) 2008-08-05 2008-08-05 基于故障注入的嵌入式系统测评方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2008100634459A CN101334754A (zh) 2008-08-05 2008-08-05 基于故障注入的嵌入式系统测评方法

Publications (1)

Publication Number Publication Date
CN101334754A true CN101334754A (zh) 2008-12-31

Family

ID=40197363

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2008100634459A Pending CN101334754A (zh) 2008-08-05 2008-08-05 基于故障注入的嵌入式系统测评方法

Country Status (1)

Country Link
CN (1) CN101334754A (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101901186A (zh) * 2010-07-08 2010-12-01 西北工业大学 一种嵌入式系统可靠性分析与评估方法
CN102135920A (zh) * 2011-01-17 2011-07-27 中国航天科技集团公司第九研究院第七七一研究所 嵌入式星载计算机故障注入系统及其注入方法
CN102412909A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入设备
CN102541737A (zh) * 2011-11-30 2012-07-04 北京航空航天大学 一种嵌入式软件可靠性测试缺陷注入与控制方法
CN102571498A (zh) * 2012-02-09 2012-07-11 华为技术有限公司 故障注入控制方法和装置
CN102768642A (zh) * 2012-06-25 2012-11-07 浪潮电子信息产业股份有限公司 一种基于源码分析的linux内核可靠性评测系统及其方法
CN103019921A (zh) * 2011-09-20 2013-04-03 中国人民解放军63928部队 一种基于故障注入的操作系统容错性测试系统及其方法
CN101770417B (zh) * 2010-01-15 2013-04-10 哈尔滨工业大学 基于jtag的硬件故障注入系统及故障注入方法
CN103328992A (zh) * 2010-12-20 2013-09-25 迪尔公司 用于诊断网络中的故障或开路的方法和系统
CN103529820A (zh) * 2013-09-26 2014-01-22 北京航天自动控制研究所 一种适用于嵌入式设备的故障注入测试系统及测试方法
CN103580940A (zh) * 2012-07-31 2014-02-12 北京旋极信息技术股份有限公司 一种获取性能信息的方法和系统
CN105528284A (zh) * 2014-09-28 2016-04-27 华为技术有限公司 一种内核故障注入方法及电子设备
CN106294036A (zh) * 2015-05-21 2017-01-04 阿里巴巴集团控股有限公司 一种硬件故障验证方法、装置及客户端
CN107480040A (zh) * 2016-06-08 2017-12-15 阿里巴巴集团控股有限公司 工作流稳定性测试方法及设备
CN107608829A (zh) * 2017-09-26 2018-01-19 郑州云海信息技术有限公司 一种验证服务器是否存在硬件丢失的方法
CN109271306A (zh) * 2018-09-30 2019-01-25 深圳中广核工程设计有限公司 基于故障注入的寿命试验方法、装置、设备及介质
CN110704314A (zh) * 2019-09-26 2020-01-17 天津津航计算技术研究所 一种嵌入式软件测试的故障注入方法
CN110728802A (zh) * 2019-10-23 2020-01-24 深圳市丰巢科技有限公司 智能柜的巡检方法、装置、智能柜及存储介质
CN110868337A (zh) * 2019-11-15 2020-03-06 腾讯科技(深圳)有限公司 容错共识机制测试方法、装置、存储介质和计算机设备

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770417B (zh) * 2010-01-15 2013-04-10 哈尔滨工业大学 基于jtag的硬件故障注入系统及故障注入方法
CN101901186A (zh) * 2010-07-08 2010-12-01 西北工业大学 一种嵌入式系统可靠性分析与评估方法
CN101901186B (zh) * 2010-07-08 2012-06-06 西北工业大学 一种嵌入式系统可靠性分析与评估方法
CN102412909A (zh) * 2010-09-26 2012-04-11 北京旋极信息技术股份有限公司 一种故障注入设备
CN103328992B (zh) * 2010-12-20 2016-01-20 迪尔公司 用于诊断网络中的故障或开路的方法和系统
CN103328992A (zh) * 2010-12-20 2013-09-25 迪尔公司 用于诊断网络中的故障或开路的方法和系统
CN102135920A (zh) * 2011-01-17 2011-07-27 中国航天科技集团公司第九研究院第七七一研究所 嵌入式星载计算机故障注入系统及其注入方法
CN103019921A (zh) * 2011-09-20 2013-04-03 中国人民解放军63928部队 一种基于故障注入的操作系统容错性测试系统及其方法
CN103019921B (zh) * 2011-09-20 2015-04-15 中国人民解放军63928部队 一种基于故障注入的操作系统容错性测试系统及其方法
CN102541737A (zh) * 2011-11-30 2012-07-04 北京航空航天大学 一种嵌入式软件可靠性测试缺陷注入与控制方法
CN102541737B (zh) * 2011-11-30 2014-07-23 北京航空航天大学 一种嵌入式软件可靠性测试缺陷注入与控制方法
CN102571498A (zh) * 2012-02-09 2012-07-11 华为技术有限公司 故障注入控制方法和装置
CN102571498B (zh) * 2012-02-09 2016-03-09 华为技术有限公司 故障注入控制方法和装置
CN102768642B (zh) * 2012-06-25 2016-08-03 浪潮电子信息产业股份有限公司 一种基于源码分析的linux内核可靠性评测系统及其方法
CN102768642A (zh) * 2012-06-25 2012-11-07 浪潮电子信息产业股份有限公司 一种基于源码分析的linux内核可靠性评测系统及其方法
CN103580940B (zh) * 2012-07-31 2016-08-17 北京旋极信息技术股份有限公司 一种获取性能信息的方法和系统
CN103580940A (zh) * 2012-07-31 2014-02-12 北京旋极信息技术股份有限公司 一种获取性能信息的方法和系统
CN103529820B (zh) * 2013-09-26 2016-02-10 北京航天自动控制研究所 一种适用于嵌入式设备的故障注入测试系统及测试方法
CN103529820A (zh) * 2013-09-26 2014-01-22 北京航天自动控制研究所 一种适用于嵌入式设备的故障注入测试系统及测试方法
CN105528284B (zh) * 2014-09-28 2018-09-28 华为技术有限公司 一种内核故障注入方法及电子设备
CN105528284A (zh) * 2014-09-28 2016-04-27 华为技术有限公司 一种内核故障注入方法及电子设备
CN106294036A (zh) * 2015-05-21 2017-01-04 阿里巴巴集团控股有限公司 一种硬件故障验证方法、装置及客户端
CN107480040A (zh) * 2016-06-08 2017-12-15 阿里巴巴集团控股有限公司 工作流稳定性测试方法及设备
CN107608829A (zh) * 2017-09-26 2018-01-19 郑州云海信息技术有限公司 一种验证服务器是否存在硬件丢失的方法
CN109271306A (zh) * 2018-09-30 2019-01-25 深圳中广核工程设计有限公司 基于故障注入的寿命试验方法、装置、设备及介质
CN110704314A (zh) * 2019-09-26 2020-01-17 天津津航计算技术研究所 一种嵌入式软件测试的故障注入方法
CN110704314B (zh) * 2019-09-26 2023-03-10 天津津航计算技术研究所 一种嵌入式软件测试的故障注入方法
CN110728802A (zh) * 2019-10-23 2020-01-24 深圳市丰巢科技有限公司 智能柜的巡检方法、装置、智能柜及存储介质
CN110868337A (zh) * 2019-11-15 2020-03-06 腾讯科技(深圳)有限公司 容错共识机制测试方法、装置、存储介质和计算机设备

Similar Documents

Publication Publication Date Title
CN101334754A (zh) 基于故障注入的嵌入式系统测评方法
US7379846B1 (en) System and method for automated problem diagnosis
US7516025B1 (en) System and method for providing a data structure representative of a fault tree
CN103778061B (zh) 数组越界错误的自动检测和校正方法
US7320114B1 (en) Method and system for verification of soft error handling with application to CMT processors
CN114065677B (zh) 用于集成电路硬件设计的故障注入测试的方法和系统
US8225142B2 (en) Method and system for tracepoint-based fault diagnosis and recovery
CN104657247A (zh) 基于jtag调试方式实现通用型故障注入系统和故障注入方法
US10698805B1 (en) Method and system for profiling performance of a system on chip
Höller et al. FIES: a fault injection framework for the evaluation of self-tests for COTS-based safety-critical systems
US10073933B2 (en) Automatic generation of properties to assist hardware emulation
Chen et al. Systems modeling with EAST-ADL for fault tree analysis through HiP-HOPS
EP2565790A1 (en) Method and system for injecting simulated errors
CN105074656A (zh) 管理并发谓词表达式的方法和装置
CN110069736A (zh) 页面加载方法及设备
Kothari et al. Modeling lessons from verifying large software systems for safety and security
Bellotti et al. How future automotive functional safety requirements will impact microprocessors design
Backhausen et al. Robustness in automotive electronics: An industrial overview of major concerns
Kantrowitz et al. Functional Verification of a Multiple-issue, Pipelined, Superscalar Alpha Processor - the Alpha 21164 CPU Chip
US6845440B2 (en) System for preventing memory usage conflicts when generating and merging computer architecture test cases
CN113127331B (zh) 一种基于故障注入的测试方法、装置及计算机设备
Gougam et al. Supervision patterns: formal diagnosability checking by Petri net unfolding
Jhumka et al. The early identification of detector locations in dependable software
Pintard et al. Using fault injection to verify an autosar application according to the ISO 26262
CN105718375A (zh) 嵌入式系统的可恢复性度量方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20081231