- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
什么是嵌入式系统?嵌入式软件系统测试中的仿真系统架构设计有什么优点?
1 嵌入式系统概述
嵌入式系统是以计算机技术为基础,以应用为中心,并且软 硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
嵌入式软件是基于嵌入式系统设计的软件,是计算机软件的一种,同样由程序及文档组成,可细分成系统软件、支撑软件、应用软件三类。嵌入式软件大量应用于家用、 工业、商业、通讯和国防领域。我国目前在嵌入式应用软件方面具有优势。在嵌入式系统中,软件的工作量约占全部工作量的80%,其中测试与验证的工作量占软件工作量的70%。
1.1 嵌入式软件特点和测试难点
嵌入式系统开发有其自身的特点。通常,在嵌入式系统软件中,底层驱动程序、 操作系统和应用程序的界线是不清晰的,有时甚至混编在一起。这主要是因为嵌入式系统中软件对硬件的依赖性造成的。由于嵌入式软件对硬件的依赖性,软件测试时必须最大限度地 模拟被测软件的实际运行环境,以保证测试的可靠性。底层程序和应用程序界限的不清晰增加了测试难度。测试时,只有在确认了嵌入式系统平台及底层程序正确的情况下才能进行应用程序的测试,而且在系统测试时,对错误的 检测定位较为困难。软件的专用性也是嵌入式软件的一个重要特点。由于嵌入式软件设计是以一定的目标硬件平台为基础、面向固定任务进行的,因此,一旦被加载到目标系统上,功能必须完全确定。这个特点决定了嵌入式应用软件的继承性较差,延长了系统的测试时间,增加了测试费用。嵌入式软件的另外一个重要特点就是实时性,这是从软件执行的角度考虑的,也就是说嵌入式软件的执行要满足一定的时间约束。嵌入式系统中,应用软件自身 算法的复杂度和操作系统任务调度,决定了系统资源的分配和消耗。因此,对系统实时性进行测试时,要借助一定的测试工具对应用程序算法复杂度和操作系统任务调度进行分析测试。
1.2 嵌入式软件测试方法
软件测试是软件开发中的一个重要环节,嵌入式软件也不例外。图1给出了嵌入式软件测试的一般流程。根据不同的指标,软件测试方法[1]有不同的划分方法。根据软件开发过程中测试所处的不同阶段可分为模块测试、集成测试和系统测试;根据是否需要运行目标代码分为动态测试和静态测试;根据目标代码的可见性可分为白盒测试(结构测试)和黑盒测试(功能测试)。在软件测试中,每种测试方法都不是孤立的。为了最经济、最有效地达到测试目的,各种测试方法往往互相嵌套。例如,在软件的单元测试阶段,可以用黑盒测试和白盒测试的方法分别进行动态测试。而在系统测试阶段,只能使用黑盒测试方法进行测试。
为了更有效地进行嵌入式软件的系统测试,提出了嵌入式软件系统测试中具有交互式错误检测定位功能的 仿真系统架构设计方案。使用此仿真系统不仅可以按照第一类测试方法和第二类测试方法辅助进行系统测试,而且还可以利用仿真系统的交互式学习功能,不断积累错误定位经验,实现错误检测定位,为测试人员和开发人员节省大量时间。这是其他测试方法所不具备的。
2 仿真系统结构设计
嵌入式软件的硬件载体大部分为专用计算机设备,并且通常没有外围设备用于测试过程中的监测或观察。而有些嵌入式软件还会存在交互式操作。在被测软件移植到目标机上的实际硬件环境以后,由于与嵌入式系统平台和底层程序融为一体,对系统进行黑盒测试时,错误定位将变得非常困难。因此根据嵌入式软件的特点,提出了一个具有交互式错误检测定位功能的仿真系统结构模型。图2为仿真系统分层结构图。仿真系统在设计上采用分层结构、分层设计、分层实现的方式,每一层的内部实现对其他层透明。
仿真系统由硬件驱动、交互操作模块、驱动模块、桩模块、分析模块和人机界面六个部分组成。下面分别介绍各个模块的功能。
(1)硬件驱动部分负责驱动硬件,向上一层提供底层硬件的操作 接口。仿真系统通过硬件驱动为嵌入式软件提供相应的 通信接口,用于嵌入式软件和仿真系统之间的数据交换。 通信接口根据具体嵌入式软件的接口设计实现,一般为各种通讯协议。各通讯协议模块之间松散 耦合,且具备可扩展性,保证硬件接口的改变不会影响上层的功能实现。
(2)交互操作模块负责与嵌入式软件的交互操作。此部分可裁剪,主要根据嵌入式软件是否需要交互操作而定。其主要功能需要根据特定的软件设计实现。
(3)驱动模块负责封装与仿真系统测试数据有关的处理逻辑,向人机界面提供独立于体系结构的操作接口。系统测试阶段除了正常的功能和性能测试,更应该进行意外测试和破坏性测试,即测试系统正常执行情况下不该发生的激发活动和人为的破坏性测试,进一步验证系统性能。而驱动模块则将测试用例中各种测试数据传输给被测嵌入式软件。
(4)桩模块为嵌入式软件提供各种必要的输入数据。嵌入式软件的正常运行需要必要的外界输
文档评论(0)