大小各异的实时操作系统
Rodney Myrvaagnes著
有各种各样的实时操作系统,它们在是否需付版权费、系统调用、支持的处理器类
型以及提供的工具方面存在很大差别。
实时操作系统(RTOS)在嵌入应用中有用武之地,其涉及范围很宽,从最简单的执
行多种任务的马达控制到民用飞机上的飞行控制系统。RTOS与其他操作系统不同的一个
特征是:它们必须至少有一个中断,其服务能保证在一个给定的时间内完成,而不论是
否发生其他事情。这就像是一个变戏法的魔术师,他必须准确地在下一个球落下时抓住
它,不能耽误时间。
如果有一个以上的任务需要获得有保证的响应,处理器必须有足够的空闲时间能够
完成全部工作,不会使优先级较低的任务因被抢占而瘫痪。有保证的响应只需要对特定
的事件足够快就行,不一定要达到最快。
有一些厂商对RTOS的理解并没有上面所述那么严格,而且很多嵌入式控制应用在任
务拥塞的概率很低时也工作得很好。在这种情况下,开发人员可能被劝诱采用一个Linu
x或Berkeley内核,取消实现高优先级任务的内存交换。留下足够多的空闲CPU周期让处
理器经常闲着,这能够使多任务的执行看起来更好些。
本文介绍的RTOS就它们所能提供的系统调用数、支持的处理器类型以及在开发环境
中包含的工具种类而言差别很大。模块化的程度也有区别。有一些RTOS可以仅仅对特定
目标产品所需的部件进行编译,从而产生一个很小的内核。
系统在授权使用的方式上也存在差别。有些可提供源代码,有些只提供二进制代码
。有些厂商对售出的每一套运行系统都收费,而另外一些厂商事先收一笔总的费用。能
够预见到一项产品的生命周期及产品数量的开发人员可以对这些定价因素加以考虑。
无版权费的系统
正在面临着采购还是自己开发决策的设计人员可能发现eCos值得注意。Cygnus
Solutions公司(位于美国加州Sunnyvale市)已经成长为一家为无版权费的GNU操作系
统销售工具、进行移植和技术支持的成功企业,它已经发布了eCos(参看《今日电子》
1999年第2期,P.5),这是一种遵循GNU商业模式的RTOS。
这家公司把源代码放到网址http://www.cygnus.com/ecos上,包括用于几种微处理
器的版本,正在对其他一些微处理器进行移植。当然,公司很乐意销售设计人员的工具
以及支持服务,但习惯于GNU或Linux运作方式的设计人员可能先要尝试一下。
On Time Software公司(位于纽约州的Setauket市)为386以上的x86处理器提供了
32位的RTOS。它的内核以32位保护方式运行。主机支持包括DOS或Windows(从3.x版一直
到98和NT)。
RTTarget-32核心OS连同交叉开发工具的二进制代码定价为1700美元(源代码为27
00美元)。
RTTarget的抢占式多任务程序RTKernel-32的二进制代码定价1950美元(源代码36
00美元)。其FAT文件系统RTFiles二进制代码定价1700美元(源代码3200美元)。公司
还提供各种TCP/IP附加软件。演示程序可以在登记后从网址http://www.on-time.com/
download.htm下载。
U.S.Software公司(位于美国奥勒冈州的Hillsboro)推出的TronTask! 3.0以μ
ITRON规范为基础,这是一种在日本广泛采用的针对内存容量受限的小型产品的标准。单
用户开发许可证价格为5000美元,购买与DOS/Windows 95兼容的文件系统US-Files另加
3500美元。
该公司还提供NetPeer,它是嵌入目标模块C程序库,需要不到16K字节代码和2K字
节RAM。公司还在嵌入目标模块中加进TCP/IP、IrDA、RF、Ethernet和PPP等协议,独立
于主机的操作系统。可以为很多处理器和工具集建立程序库。在一台工作站上,NetPee
r是Windows 95/98/NT/CE、Linux、Solaris、MacOS和Unix下的一个独立的应用程序。它
的起价为7500美元。
QNX Softwane Systems公司(位于加拿大安大略省Kanata市)已经将PersonalJava
和EmbeddedJAVA应用环境(得到Sun Microsystems公司的许可证)添加进它的Neutrino
RTOS中。添加的软件将使得运行Neutrino的信息电器可以利用Java进行联机升级。单
用户Neutrino开发环境定价2695美元,运行版许可证单套的定价在90至350美元之间。单
套版的Java附加软件每份45美元。
Green Hills Software公司(位于美国加州Santa Barbara市)提供Multi/ThreadX
集成开发环境(IDE)。它将公司的多个软件开发工具与Express Logic ThreadX RTOS
相结合。
ThreadX组合了小的存储器容量(最低5K字节)与硬件实时能力。在40MHz的Power
PC 860处理器上,上下文关连转换时间不到2微秒。对ThreadX的支持已经被集成到Multi
工具之中,使得调试时可利用内核功能。工具中还包括用于在主机上进行开发的模拟器
。
Multi/ThreadX已经为821/860、750、CPU32、ColdFire/68K、Mips、SH、ARM7TDM
I和StrongARM等处理器准备好版本。将来还将移植到Mcore、NEC V800和Infineon TriC
ore系列。
主机硬件连接能力包括BDM和JTAG,EST公司的VisionICE,Hewlett-Packard公司的
Processor Probe,ARM公司的EmbeddedICE,以及ROM监视器等。包括C/C++/EC++编译器
、汇编程序/连接程序、Multi开发环境、内核相连的软件包在内的单用户许可证,以及
无版权费、可无限制分发的ThreadX源代码的工程许可证定价从13400美元起,每增加一
个PC席位增加5900美元。对于某些处理器提任Unix主机的许可证。
Green Hills公司还以相似的基于Multi的软件包的形式提供Integrity 2000 RTOS
,一种基于优先级的多任务系统,它具有关键任务应用所需的内存保护,可以放入ROM或
闪存中。操作系统加强对目标MMU的内存保护以防止非法的进程破坏其他的代码。系统还
禁止内核重入,多个任务不可同时调同一个系统调用。
系统支持在不重新启动的情况下下载新的用户应用。对821、860、8260、60X和74
0/750 PowerPC处理器具有完整性。对很多板卡提供支撑软件包,并且为开发人员选择其
他板卡提供移植的指导。包括Multi在内的单份许可证用于PC主机时定价7900美元,用于
Unix主机时定价10900美元。
Enea OSE Systems公司(位于美国得克萨斯州Dallas市)的OSE RTOS已经被移植到
MPC 8260 PowerQUICC Ⅱ处理器。这种结合为分布式电讯之类的高可用性和容错应用提
供了有效的数据处理能力。
除了内核之处,OSE还包含了一个链接把手,它是为进程间通信而提供。程序把手
允许在一个运行的系统中加载、改变或移去程序。OSE的一个许可证价格为8000美元。G
reen Hills公司的Multi IDE也可以提供给OSE使用,其PC版价格为5900美元,Unix版价
为8900美元(不包括OSE许可证)。
JMI Software Systems公司(位于美国多佛市)提供C Executive,这是一个可放
入ROM中的多任务RT内核,可用于8、16和32位CISC处理器,以及RISC和DSP器件。可选的
附加件包括DOS兼容的文件系统、TCP/IP以及SNMP。PSX是加入了Posix.1系统调用子集的
一种扩充。
3.3版当前支持32位的x86、ARM 7/StrongARM\ARM7TDMI(混合模式)、PowerPC、i9
60和68000,下面还将有很多的处理器。C Executive的二进制开发包价格为2500美元,
使用人数不限,针对PSX时价格为3750美元。付7500美元可购买无版权费、无限制分发的
许可证。使用次数不多、带版权费的销售方式也在计划之中。
Accelerated Technology公司(位于美国阿拉巴马州Bobile市)最近将Nucleus O
SEK移植至Infineon C167微控制器中,意欲使它成为飞行器中电子控制的一种标准。带
源代码和无限制运行许可证的系统分销价为29000美元。OSEK的任务工具集用于Windows
、Solaris和HPUX主机的版本起价为4595美元。
工具集包括嵌入开发环境、C/C++/EC++编译器套件、CrossView Pro调试器、用于
RTOS的编辑、链接和调试工具,以及Nucleus RTOS。
有版权的系统
Wind River Systems公司(位于美国加州Alameda市)的VxWorks模块化RTOS有一个
基本开发工具集Tornado Ⅱ。Tornado Ⅱ定价为2995美元,这是一种单用户许可证但并
不限于单一的工程项目,与VxWorks许可证的规定一样。支持的主机现有Windows 95/98
/NT、Solaris和HPUX。针对的系统架构包括PowerPC、68K/CPU32、x86/Pentium、
StrongARM、i960、Mips、ARM和SPARC。
VxWorks需要取得OEM许可证,定价为15000美元,或者在购买了至少一个Tornado
拷贝后只需付13500美元。仅用于一个工程项目的许可证包含了一个板卡支持软件包。
基础VxWorks还有很多可选的增补软件,每种都须付开发和运行的使用费。例如,TrueFFS
for Tornado在目标库中添加了集成的Flash File系统,包含1000个运行时的目标程
序,定价4000美元。
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。