嵌入式实时操作系统性能测试方法研究

发表于:2009-7-08 16:22

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

分享:

  4 系统实时性能测试实验平台

  为了对RTOS的实时性能进行测试,我们设计并实现了一套测试实验平台。实验平台由两块开发板(被测系统)构成,便于对不同的ERTOS进行对比。由于实验平台的主要设计目标是对相同硬件架构下的不同操作系统及操作系统的不同层次进行比较,所以两块开发板均采用了研华的PCM 7230。其主要硬件特性如下:

  CPU:Intel Xscale PXA255 400MHz

  SDRAM:64 MB

  LCD:10.4”

  I/O接口:CompactFlash、PCMCIA、RS232、RS485、

  USB、Ethernet等。

  实验平台的整体结构如图3所示。

  4.1 实验平台功能

  (1)实时性能测试

  由于大多数ERTOS的内核是不可更改的,所以对其实时性能的测试主要在用户层实现。开发者可以将现有的用于测量Rhealstone性能指标和PDLT延迟时间的benchmark程序方便地移植到PCM 7230开发板与不同RTOS组合的平台上,也可以根据应用需要自己编写测试程序,对感兴趣的延迟时间进行测量。

  除此之外,PCM7230开发板从CPU引脚上引出了一个120针的扩展接口AMI-120(ARM Module Interface)。将这120针引脚引出至实验平台上的两个测试端口1和2,可以通过示波器或逻辑分析仪对引脚上的信号进行分析;配合benchmark测试,可以得出更加精确和可信的测试结果。另外,对引脚中的部分控制信号通过CPLD单独引出至一个测试端口3,便于对不同的系统进行对比测试。

  (2)负荷发生

  由三维表示法得知,ERTOS的实时性能可以用三个特性来表示。相应地,实验平台可以产生三种类型的负荷;计算负荷(CPU负荷)、I/O负荷以及中断负荷。

  计算负荷由I/hrystone或Whetstone改编的进程实现,每秒钟消耗一定的MIPS数。

  I/0负荷由系统时钟控制,通过PCM 7230开发板上丰富的I/O接口产生流量。另外,通过配置不同的I/O接口,还可以测试不同存储介质对ERTOS性能的影响。

  中断负荷的产生可以用CPLD进行控制.通过DIP开关设置中断发生的频率,在CPLD中实现一个分频器用于产生中断信号,并将中断信号通过AMI-120接口中的GPIO引脚传送给CPU。

  在进行ERTOS实时性能的测试时,这三类负荷可以模拟应用的真实环境。另外,通过指定三种负荷的变化,可以获得它们在三维图中的一系列坐标点,由此也可以绘制ERTOS的三维表示曲面。

  此外,由于CPLD为可编程器件,方便对其再编程以重新定义与其相连的各种器件的功能,使得测试平台有很大的灵活性和扩展性。

  4.2 计时方法

  评价ERTOS实时性能的具体指标多数是用延迟时间来表示的,比如Rhealstone方法中的前五个指标和PDLT方法。可以将这些对时间的测量过程简化为图4所示的流程。

  图4中对t1、t2的计时可以用以下三种方法实现。

  (1)系统调用

  ERTOS一般有用于计时的系统调用,例如RTLlnux的系统调用gettimeofday(),其精度可以达到μs级,可以满足多数延迟时间的计时。但是,由于系统调用时有一个压栈、出栈的过程,以及从用户空间到系统空间的转换,这个过程对计时会产生一定的影响。

  (2)OS时钟寄存器

  PXA 255处理器内包含一个32位的OS时钟寄存器,由一个3.6864 MHz的晶振驱动。可以在计时开始和结束时分别读取该寄存器的值,换算出对应的延迟时间。

  (3)GPIO引脚

  AMI-120接口上有许多GPIO引脚,可以考虑在计时往一个空闲的GPIO引脚上写一个特定的信号,利用CPLD中实现的计数器对两个信号间的时间间隔进行计数。驱动CPLD的时钟是可以更换的,其最大允许频率为200 MHz。这样,考虑到CPLD的引脚间延迟,用这种方法计时的精度可以达到数+ns。

  5 ERTOS对比测试

  操作系统是数字系统中进行资源管理的软件。狭义的操作系统只包括进行进程管理、内存管理、中断管理等基本功能的内核部分;而广义上讲,操作系统除了内核外,还包括GUI、API、大量的驱动程序,甚至一些应用程序也可以认为是操作系统的一部分。现代操作系统在其内部提供了丰富的功能模块,而嵌入式操作系统的一个显著的特点就是,可以根据需要对这些功能模块进行裁剪。典型的ERTOS层次结构如图5所示。

  操作系统提供的功能模块一方面扩展了系统的功能,方便了用户的使用;另一方面,又在一定程度上会影响系统的性能。ERTOS在对系统的功能进行选择和剪裁时,就需要在功能和性能之间选择一个折中点,使得系统能够提供尽可能多的功能,同时又能满足其实时性的需要。这就要求在进行系统的设计、选择或者裁剪时,对操作系统增减或替换不同模块时的性能进行对比分析。

  利用上文中的测试实验平台,可以在两块开发板上分别配置有/无某个功能模块的系统,将测试方法分别应用于两个系统上。由于被测的系统采用的是相同的硬件架构,消除了硬件对系统性能的影响。对得到的测量结果进行对比分析,就可以比较精确和客观地得出该功能模块对整个系统性能影响的大小。

  同样,该实验平台也可以用于测试分析不同ERTOS系统的性能。

  6 总 结

  本文对三种ERTOS性能测试方法进行了研究,对一些指标和特性进行了分析。文章的后半部分给出了一个测试实验平台的结构及其功能说明,并针对实验平台给出了系统计时的三种方法。文中提供的测试方法和手段对ERTOS的选择和开发有一定的参考价值。

22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号