RTOS在国内主要有vxworks和pSOS,现在还有nuclear、QNX、WinCE。
说起好坏吗,其实,vxWorks要好一些,可能;不知道以前国内研究所一直用的VRTX是不是都被vxworks所替代了呢。据说因为VRTX是最早商业化的RTOS,60年代就开始卖了,所以呢,全是汇编,改都改不过来,还有就是对TCP/IP的支持一直不好,vxWorks是从VRTX公司出来的人做的,号称make VrtX Works!,所以就有了vxWorks的名字。
nuclear是卖源代码的,而且不卖licence,就是说,你设计了一台路由器,生产的时候不用为你的每一台路由器都付30美圆的licence费用给nuclear的那个公司。
QNX和WinCE都似乎更注重于GUI图形界面方面的东西,当然,QNX好象还号称在别的方面也很出色,它是一家加拿大的公司做的。QNX我曾经有一张DEMO盘,1.44M的小盘,用它启动,就能够实现图形界面和MODEM拨号上网。(偶现在懒得去找那张DEMO盘了,实在想要就发个mail给我,偶去找来给你,在学校FTP那个应该也是,我没用过)但是请别以为QNX就是用在一般DESKTOP PC机上的啊。QNX是在X86体系上面开发出来的,这和别的RTOS不一样,别的好多RTOS都是从68K的CPU上面开发成熟,然后再移植到X86体系上面来的(对68K不熟悉?这在嵌入式开发里面用的很广泛啊,motorola公司的,VME上面用的太多了),但是QNX就是直接在X86上面开发的然后近年才在68K等CPU上面能用。WinCE么,刚出来的时候还是soft realtime,不是hard realtime,(不知道这个概念?在那本“入门书”上面有!),所以一开始的时候大家就很鄙视WinCE,觉得。。。//hehe。。。但是,你看看现在WinCE那浩大声势?哈哈
pSOS吗,和vxWorks一起,是最最成熟的RTOS啦,打个比方,用pSOS和vxWorks来开发路由器、交换机、大型电讯设备、卫星通讯设备、航天器、军事控制设备,那是最合适的啦,您知道吗,有些东西是不能死锁的,稳定性是第一位的,比如747掉下来就死翘翘了:)当然啦,还有系统硬件设计上面的问题,比如双机热备份冗余设计之类的,不然电话交换机一坏,电讯局就整天挨批啦!那么QNX和WinCE呢,用来设计机顶盒、手持设备(手掌电脑、手机)、GPS设备(?)之类的需要漂漂界面的地方。
以上介绍的都是要卖钱的RTOS,估摸着您一般会买不起:(
穷人的RTOS在哪里?ucOS就是了,免费的,在学校FTP站点有人放过,不过好象不全;支持好多单片机、甚至支持DSP!还有eCOS在学校FTP也有热心人下好了,但是可惜不支持X86。免费的还有好几种呢,一种是美国军方以前用的叫什么了(RTEMS?错了)有几个站点,比如www.ucos-ii.com还有。。忘了!你如果IP能出国,去那个叫Alxxxx的搜索引擎找找看,比yahoo好多了!Yahoo上面也有那个Alxxxx的连接。
RTOS在全世界有好几百种,很多大公司都有自己的RTOS,lucent的还是免费的呢。
高性能但是又不用钱的RTOS,呜呜,象linux那样?看来我们是该想点办法了啊。
其实一个实用的RTOS,除了本身OS核心的性能要好之外,还有开发工具的好坏、编译器、调试器之类的,调过单片机程序的哥们一定很有感触吧。更重要的还有现在日新月异的各种新技术要往RTOS上面加。。。比如tcp/ip以及这么多的新的网络协议(比如internet 2),web/browser,java(呵呵,不能叫“新”了)
那么多RTOS,你会问,我们怎么办呢?其实学了一种,别的也就大同小异了。还有一个概念就是,应用层的程序和RTOS之间用一个虚拟的接口接起来,以后无论你移植到哪个RTOS都方便得很,而且软件可以在虚拟的接口上面先调试,在硬件板子还没有出来之前软件就可以先调试了。开发RTOS和使用RTOS是两件事。使用RTOS开发的应用程序和RTOS是一起烧进FLSH芯片里面去使用,相当于你使用了RTOS厂商的BIN代码。
The Way of the great learning involves manifesting virtue, renovating the people, and abiding by the highest good.
没有评论:
发表评论