Linux嵌入式实时操作系统开发与设计(6)
扫描二维码
随时随地手机看文章
第五章 rtlinux的性能测试
根据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是完全可以胜任实时运算的操作系统。
第六章 感想与体会
当前,以信息家电为中心的嵌入式系统正得到蓬勃的发展。并且现在出现的市场只是冰山一角。我相信,随着嵌入式系统和网络技术的发展,整个世界将更加网络化,计算化。
世界是丰富多彩的,因而无处不在的嵌入式系统也要适应这个千变万化的世界。嵌入式系统也是千变万化的!嵌入式系统的这种特点注定了其市场的碎片化。任何公司都没有足够的能量统一市场。这带来新的游戏规则,给新生的公司以机会。
开放源码软件的特点注定了它非常适合嵌入式系统。开放源码导致定制的方便,我们完全可以从多个软件中提取需要的精华,应用到自己的应用上去,大大节省了开发成本。我认为以服务为主导,以开放源码软件为支柱的公司将是嵌入式系统市场上的重要角色。
我们知道,形成规模才能导致成本的降低,而在多样化的嵌入式系统中,更重要的是定制,是千变万化的应用环境。所以,如果利用封闭源码的商业软件,由于不能形成规模成本将非常高。当然,也不排除在某些领域像windows ce, palmos 等成熟的系统形成优势,但从长远的角度来看,开放源码软件更加适合嵌入式系统。我们期待着更多成熟的开放源码软件的出现,并且认为商品化是开放源码软件很好的出路。也希望中国的软件业能在开放源码软件革命中获得一席之地。
几乎以免费方式就可以获得的 linux,其商业价值到底在哪里?换句话说,到底什么样的系统最需要 linux?我认为下面三种系统最应该使用 linux:
安全相关的系统。这些系统应该使用开放源码的系统,以防止封闭系统留下的各种后门。这包括关键的网络服务器、政府部门和军用服务器、工作站等等。
实时系统。对各种实时性系统来讲,底层的操作系统同样不能建立在黑箱之上。这包括工业控制用的实时系统,各种军用系统等。
嵌入式系统。嵌入式系统是高度定制的系统,对嵌入式系统而言,没有也不应该有通用的系统。为了达到定制,就需要开放操作系统的源码。这也是原先许多 windows ce 开发商现在转向 linux的原因。
因此,实时嵌入式系统正是 linux 大显身手的地方。国内外的许多开发商早就看到了这一点,并在嵌入式 linux 的开发方面投入了大量的人力和资金。综合说来,以 linux 作为操作系统开发嵌入式系统,有如下优势:
linux 的可移植性好,开发工具丰富。每个 cpu 开发商在发布每一款新的嵌入式 cpu 时,均会投入大量人力移植 linux 内核,并提供丰富的开发工具。
开放源码。linux 内核的源码开放,可大大方便系统的定制开发。
可用资源丰富。在 linux 系统上进行开发时,可以获得的源代码等资源比其他封闭系统多得多。
成本低。linux 的低成本特点,可大大降低最终嵌入式系统的成本,并扩大开发商的获利空间。
参考文献
[1] 吴朝晖教授 纵谈嵌入式技术. 微电脑世界. 2000年第49期
[2] 邹思铁. 嵌入式linux设计与应用. 清华大学出版社. 2002.1
[3] 刘云新,张尧学. 一个基于linux的嵌入式实时操作系统. 计算机工程与应用. 2001.7: 64-85.
[4] d. m. dhamdhere. systems programming and operating systems. 电子工业出版社. 2001.9
[5] william stallings. operating systems internals and design principles. 电子工业出版社. 2001.6
[6] h. lyckama & l. bayer. unix time-sharing system: the mert operating system. bell system technical journal. 57(6):2049-2086, 1978.
[7] alessandro rubini. linux驱动程序. 中国电力出版社. 2000.4
[8] 嵌入式论文集. 电子产品世界. 2000.11
[9] 沈绪榜,何立***编. 2001嵌入式系统及单片机国际学术交