- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
PAGE 1
浅析嵌入式软件可靠性设计
【摘要】嵌入式系统应用领域千差万别,但基本要求嵌入式系统功能强大、性能稳定、工作可靠。对嵌入式系统进行快速有效的测试则愈加显得重要。本文对嵌入式系统的软件可靠性进行了深入全面的分析,针对如何提高嵌入式软件可靠性安全性,进行开发策略、程序设计、测试手段、安全分析等方面进行了探讨,对嵌入式软件测试关键技术和测试结构进行论述。
【关键词】嵌入式软件;可靠性;软件测试;测试策略;插桩技术
1.嵌入式系统可靠性概述
嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”,是软件和硬件的综合体。嵌入式软件既是电子系统的核心,也是硬件系统的有效补充。需要具备防错、判错、纠错、容错的功能。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失。这就要求对嵌入式系统,包括嵌入式软件进行严格的测试、确认和验证。
2.嵌入式可靠性技术国内外研究动态
早期的嵌入式计算机大都是针对具体任务而设计的专用计算机。这种专机专用的设计方法在应用中逐渐暴露出许多弊端。首先,设计成本很高;其次,设计中有很多低水平重复性劳动;第三,要配备专用的维护人员,增加了费用等。而嵌入式系统的通用化设计则可以弥补这些不足。
国外对嵌入式软件测试的研究始于70年代,软件测试方法主要是针对单个系统的。在此后的20年,许多研究机构针对嵌入式软件的实时性、嵌入性和反应性等问题进行了大量的研究,许多支持嵌入式软件测试的工具也应运而生。很多计算机公司把嵌入式计算机设计成商用货架产品,取得相当的成功。90年代中后期,国内开始对嵌入式软件测试技术和测试工具进行研究,多数产品只应用在某一领域,通用化程度有待进一步提高,目前大型的软件工程都使用国外的软件测试平台。
3.嵌入式软件可靠性特点
(1)实时性对嵌入式软件可靠性的影响
实时软件的正确性由功能、行为和时间特性决定。如何对软件的时间特性进行验证成为嵌入式软件可靠性的核心问题之一。对软件的时间测试可分为静态时间分析和动态实时检测两种方法。
静态时间分析就是不执行被测程序,而通过分析程序结构来预估程序、子程序执行时间的方法,它不知道子程序实际运行时的分支走向和循环次数等不确定性因素,因此不能得到程序的实际执行时间。但静态分析可以确定程序在最坏情况下的执行时间,即程序最大执行时间是否满足时间约束。由于实时系统需要在任何情况下都在指定期限前完成任务,计算程序的最大执行时间具有非常重要的意义。
动态实时检测就是通过执行程序来测试程序的时间特性。在线仿真器ICE、指令仿真器和插桩工具是三种最常用的方法。
实时性使得嵌入式软件的测试用例编写不仅要测试软件的功能和行为特性,还要测试其时间特性,这给传统的测试用例生成方法带来了新问题。
(2)嵌入性对嵌入式软件可靠性的影响
嵌入式软件的开发环境和运行环境的不一致,也给嵌入式软件可靠性的测试带来了不少麻烦。一方面,测试工具运行在宿主机上,测试所需要的信息在目标机上产生,并通过一定的物理/逻辑连接传输到宿主机上,由测试工具接受。因此,嵌入式软件测试的一个重要问题是建立宿主机与目标机之间的物理/逻辑连接,解决数据信息的传输问题。
另一方面,即使在宿主机环境下测试再充分,也不能说明在目标机环境下该软件运行不出问题。因而,嵌入式软件还面临着目标环境的测试。这不仅增加了测试的代价,而且还带来了嵌入式软件测试策略问题,即哪些测试分配在宿主环境进行,哪些测试分配到目标环境下运行。
(3)反应性对嵌入式软件可靠性的影响
反应性系统在任何时刻都要对可能出现的时间作出适当反应。由于“激励-响应”在反应式系统中占主要地位,因此这类系统包含大量复杂的控制行为。
并发性是反应式系统最重要也是最基本的特征,任何反应式程序中均包含若干并发进程。所以,反应式不能简单的将它定义为输入和输出数据的函数,而需要表示为一个输入和输出序列的二元组。
4.提高嵌入式系统软件可靠性方法
(1)优化系统设计方案
嵌入式系统最大的特点是以控制为主,软硬件结合较多,功能性操作较多,模块互相调用较多,外部工作环境复杂,容易受到干扰或干扰别的设备,且执行错误的后果不仅仅是数据错误而且有可能导致系统崩溃等不可估量的灾难。在设计过程中需注意软硬件接口之间的冗余和预防性设计,可采用看门狗电路、状态保存等恢复技术;软件锁设计、程序陷阱设计等抗干扰技术以及备份技术有效的进行系统容错设计。
(2)严格的软件测试
软件可靠性测试是在软件生存周期的系统测试阶段提高软件可靠性水平的有效途径。各种测试方法、测试技术都能发现导致软件失效的缺陷,排除这些缺陷后,一般来讲一定会实现软件可靠
您可能关注的文档
最近下载
- 光伏电站的运行与维护规范.pdf
- 危化企业加油加气站双重预防机制手册.doc VIP
- 《首批重点监管的危险化学品名录》.pdf VIP
- 设计的创造性思维和工程思维 课件 高中通用技术粤科版 必修 技术与设计 .ppt VIP
- 兄弟 HL-4150CDN 4570CDW 4150 4570 彩色激光打印机中文维修手册.pdf VIP
- 医护人员职业安全与防护.pptx VIP
- 常用量具、检具测量基础知识试题(附答案).docx VIP
- 建设工程造价鉴定规范.pdf VIP
- 2025年中国石化校园招聘确认笔试参考题库附带答案详解.docx
- 现代家政学概论-ppt6.1第一节服装搭配.pptx VIP
文档评论(0)