第五章 RTLINUX的性能测试<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
根据2.2节有关中断延迟的介绍。在这一章,我们将对RTLinux的中断延迟进行测试。测试的机器为Celeron 412MHz,196MB内存,RTLinux3.1+Linux-2.2.19(与前面测试的Linux版本相同)的机器上进行了测试(测试程序在附录2)。测试的结果如表5.1所示:
负载类型 | 平均值 | 最小值 | 最大值 |
无负载 | 2.36 | 2.10 | 15.50 |
硬盘循环拷贝 | 3.20 | 2.10 | 19.40 |
计算负载 | 2.56 | 2.20 | 14.50 |
表5.1 实时中断延迟时间(单位:微秒)
n 无负载:所有进程已经杀死
n 硬盘循环拷贝:一个硬盘循环拷贝shell脚本在运行
n 计算负载:一个循环执行浮点运算的C程序
从测试结果看,RTLinux的中断响应时间明显小于标准Linux的中断响应时间。在磁盘拷贝负载下最大延迟为19.40微秒,在这种负载情况下,标准Linux的延迟达到了500微秒。
为了计算调度精度,我们运行了一个周期实时任务。在每个周期任务唤醒时,记录下并比较它的时间,记录下最大的时间值。时间值在10微秒左右。
从上结果看, RTLinux 是完全可以胜任实时运算的操作系统。