嵌入式OS发展到今天已经有30多年历史了,未来的嵌入式OS 会是什么样的?技术会有哪些变化?商业还会蓬勃发展,还是逐渐消亡呢?笔者在撰写《嵌入式操作系统史话》专栏期间,恰逢美国的CES2014,我参观了LG,三星、SONY,奥迪等大企业的展位,也看到了Intel、恩智浦和TI等半导体公司最新的芯片解决方案。在美国期间我还去了加州硅谷和佛州韦斯顿,拜访了从事嵌入式OS开发的专家们,经过交流我了解到国外嵌入式OS最新发展的一些情况。
嵌入式OS方兴未艾
嵌入式OS是在70年代开始发展到今天已经40多年了,嵌入式OS依然是方兴未艾。我在CES2014上看到了各种嵌入式OS在消费电子、汽车和医疗电子等领域的最新应用。比如高通最新智能手表--Toq,使用的是ThreadX嵌入式OS。 LG最新的基于WebOS 智能电视(图1),QNX应用在飞机的娱乐系统上(图2)。这些嵌入式OS ,它们虽然不是Android 和Vxworks这样有名气和有广泛的应用的嵌入式OS,但是依然给这些消费电子产品带来了全新的体验。根据UBM 2013年Embdded Market Study 报告,占有市场份额超过10%的嵌入式OS只有Android(28%)、FreeRTOS(21%)、Ubuntu Linux(13%)、Micrium uCOS-II和III(10%),其他十余种嵌入式OS的市场份额都只有个位数字,值得注意的是用户自己开发的嵌入式OS比例依然很高(19%)[1]。
这个现象说明了嵌入式系统还远没有像PC和移动终端市场那样具备了标准化和垄断性,嵌入式系统依然呈现的是百花齐放的态势。正如嵌入式操作系统史话第11篇“嵌入式OS的红花绿叶”所说,嵌入式应用千变万化,构建这些应用的嵌入式平台也是百花齐放,其中核心技术--嵌入式OS自然也不能一统天下了。
图1基于webOS的LG智能电视
图2基于QNX的机载娱乐系统
嵌入式OS技术的发展--多核方向
嵌入式OS的发展与微电子和集成电路的发展息息相关,著名的摩尔定律揭示了芯片中的晶体管数量和性能每隔18个月翻倍,每一美元所能买到的电脑性能将每隔18个月翻两倍这样的规律。在集成电路发展上ARM专注设计CPU,出售CPU 相关的IP(知识产权)让各半导体公司生产各自的MCU(微控制器)和MPU(微处理器),这样的方式提高了劳动生产率降低了成本,统一了开发平台提高了产品开发效率。过去的10年期间,ARM Cortex 架构的CPU核心几乎主导着嵌入式系统从智能终端到物联网传感器的方方面面。在摩尔定律的驱动下,在以ARM为代表IP公司引领下,MCU和MPU在向着高集成度、高性能和低功耗方向发展。
要保持MCU和MPU的高性能和低功耗的平衡,在CPU中采用多核设计是一种已经证明行之有效的方法。各种嵌入式MPU(比如高通和飞思卡尔通信处理器)和某些MCU (比如恩智浦公司的MCU)都发表了多核芯片。多核有同构和异构2种架构,也就是说多核芯片系统中包含同样内核的CPU核,或者不同内核的CPU核。嵌入式OS实现多核芯片支持有几种方式,其中使用Hypervisor虚拟化技术是最常见的一种,下图3是我在CES2014 TI的演示厅里面看到Red Bend公司为基于TI OMAP多核应用处理器提供给汽车电子行业解决方案的演示,在汽车仪表盘上运行是符合汽车电子标准的OSEK的RTOS,在车载信息系统(IVI)上运行的是Android,这样的好处是在保证了汽车电子核心系统安全性的基础上,支持了信息导航系统的应用软件兼容性和开放性。通过虚拟化技术支持嵌入式多核处理器的公司还有凤河和ENEA,前者支持其私有的Vxwork和开源的Linux或者Android,后者重点则在支持自己的OSE RTOS和通用的Linux解决方案[2]。
图3 Red Bend移动虚拟化在汽车上应用
嵌入式OS技术的发展--物联网方向
物联网(称为IOT-Internet of Things)是近年来IT产业发展的一个热点。物联网借助智能计算(嵌入式)、传感器和通讯技术将物体与物体,物体与计算机和互联网联系起来,组成一个面向行业应用的系统。思科预计,2020年的全球物联网设备将达到750亿台。在全世界80亿人口中,每个人届时将对应9.4台物联网设备。较传统的嵌入式设备,物联网应用要求设备尺寸更小、功耗更低、安全可靠和具备无线通讯和组网能力。面向物联网应用的嵌入式OS 应该是模块化、可伸缩、方便裁剪和软件升级维护;还必须具备无线互联的功能和协议支持,比如支持WiFi、蓝牙4.0、Zigbee和6LowPan等无线协议和支持IPv6协议栈。
最早具备物联网OS概念的是嵌入式PS传感网(WSN)的OS ,来自加州大学伯克利分校(UC Berkeley)的TinyOS和瑞士计算科学学院(Swedish Institute of Computer Science)网络系统小组Adam Dunkels开发的Contiki,它们是传感网OS的典型代表。2010年之后欧洲有了面向物联网的OS--RIOT,相对前面2个OS,RIOT 更加接近一个完整的RTOS,具备实时性和模块化结构,支持标准的C和C++编程接口,不仅可以运行在小型的MCU上,也可以支持MPU。在资源允许的条件下,可以运行最新的互联网和物联网协议栈并完成协议转换工作。
2014年1月微软嵌入式事业部总监Bob Breynaert 透露微软有计划推出物联网版本的Windows Embedded [3]。2014年2月在德国纽伦堡的嵌入式世界大会上,凤河宣布其基于Vxwork 的物联网操作系统,最近我看到风河在其官方网站上给出这个版本的产品介绍和白皮书[4]。微软和风河这2家操作系统大公司的加入,尤其是风河已经有正式的产品的介绍和计划,使得物联网操作系统已经呼之欲出。传统的RTOS的公司也纷纷有所动作,比如Micrium 公司3月宣布在资源有限制的目标系统中支持IPv6协议栈[5],据我在之前与Micrium 创始人Jean Labross 交流,他们也正在关注物联网协议的解决方案。
嵌入式OS的商业模式
近年对嵌入式OS影响最大的是Google 的Android。Android 本质并不是操作系统,而是一个由系统库、运行库、应用架构和应用软件组成的系统,Android的底层是开源的Linux OS。Google收购了Android 到今天短短的5年时间,Android 已经占据了80%移动终端的市场和28%的嵌入式市场,Android 的成功让传统的嵌入式OS企业感到危机,也看到了努力的方向。
随着越来越多的开源的OS在嵌入式系统中使用,更多嵌入式OS已经和准备选择开源的商业模式,嵌入式OS的商业模式也正在发生着变化。传统的商业模式是按照开发者数量+最终产品销售使用授权+技术服务收取费用,如今部分嵌入式OS大企业已经转向面向某个企业(或者项目)收取产品年使用非、产品维护和技术服务费用的方式,而放弃最终产品销售使用收费,今后嵌入式OS 公司更多地收入来自基于其平台和核心技术的服务性收费[6]。规模小一点的嵌入式OS公司依然还是采用传统的商业模式,但是他们愿意更多地开放自己的技术和代码,比如部分开源、出版书籍和免费源代码评估。初创的嵌入式OS公司则直接采用开源软件的模式--软件免费服务收费,它们的发展也很迅速。
Android的成功还让嵌入式OS企业看到这样的一个事实—掌握云计算平台将可以牢牢掌控嵌入式OS。我在CES2014的Zigbee联盟展位看到一家叫DSR的公司,他们开发了开源的Zigbee协议栈—ZBOSS,同时还开发了IOE(Internet of everything,
思科公司关于物联网的一个术语)的云计算平台和移动App,虽然还不是很成熟的产品,但已经可以看到未来发展的雏形。我预计微软计划中的Windows Embedded物联网版本,一定会融入微软云计算平台-Windows Azure,基于平台即服务(PaSS)的Windwos Azure 是非常适合嵌入式系统应用场景。2012年底Windows Azure 云服务也已经落地上海,这将帮助解决基于云计算的嵌入式系统应用的安全和可信问题[7] ,我相信与云计算融合是嵌入式OS发展的商业模式需要,也是技术发展的需要。
结束语
本文是《嵌入式操作系统史话》的最后一篇,其实要写的内容还很多,欧洲、日本和中国的嵌入式OS 产品都值得仔细谈谈,比如法国的Chrous、瑞典的OSE、日本的T-kernel(早期叫ITRON),中国凯思昊鹏的HOPEN、开源的RT-thread和μTenux,限于篇幅只能说这是一件很遗憾的事情。在撰写这个专题的后期,正值几件与操作系统相关的大事情的发生:Windows XP 4月将停止服务可能给中国正在运行的2亿台电脑带来安全隐患,中科红旗最近破产和国产操作系统COS引起的争议等,这些事情引发了一定要有国产操作系统的呼声再次响起,这种呼声已经引起了中央高层的关注,构建国产操作系统中的智能终端操作系统的计划或将很快浮出水面,包括物联网在内的其他嵌入式OS也在考虑之中。开发、应用和学习嵌入式OS在中国将大有可为。
在撰写《嵌入式操作系统史话》过程中,在选题和文献资料翻译方面我得到了与非网的帮助。为了保证技术文章文字的流畅和通俗易懂,我的家人帮助了我,感谢你们。
参考资料:
[1]2013 EMBEDDED MARKET STUDY UBM TECH
[2] https://www.enea.com/solutions/hypervisor/
[3] Microsoft pushes Windows Embedded for the Internet of thingshttps://www.infoworld.com/t/microsoft-windows/microsoft-pushes-windows-embedded-the-internet-of-things-235007
[4] https://www.windriver.com/vxworks/reinvented/
[5] https://micrium.com/ipv6/
[6]何小庆,谈嵌入式软件知识产权,电子产品世界杂志 2007年
[7]Christopher Barnatt 著 何小庆等译,解读云计算 ,北京航空航天大学出版社 2013年
与非网原创内容,未经许可,不得转载
摘要:对嵌入式操作系统的定义,国内外专家学者和企业界人士的理解都不尽相同,具有代表性的意见有两种;一种是说嵌入式系统就是嵌入式的计算机系统,另外一种认为嵌入式系统是一种机电结合、软硬结合执行某种特殊功能的系统……
摘要:摩托罗拉自1974年发布第一款MC6800 --8位微处理器到1979发布的MC68000(简称68K)-16/32位CPU之后,其芯片因为即可以使用在计算机系统中,也可以使用在嵌入式系统,很快成为当时行业的标准。最早开发嵌入式OS的公司,许多都是借助摩托罗拉的市场起家的……
摘要:除了上一篇提到的OS-9以外,最早出现的嵌入式操作系统(简称为嵌入式OS)当属VRTX,因其在技术上创新性,得到用户和嵌入式系统公司的广泛支持,VRTX可称为商业嵌入式OS的开拓和领导者……
摘要:在讨论开源的嵌入式操作系统(简称嵌入式OS)之前,我们先把开源软件搞清楚。“开源软件”目前并没有明确定义,也没有标准许可证。许多公司采用开放源代码一词,大概有这样两种情况……
摘要:风河公司(Wind River System)是一家专业从事嵌入式OS、软件开发工具、解决方案平台和服务的软件公司,由Jerry Fiddle和David Wilner在1981年美国加州创立。VxWorks是风河公司推出的实时多任务操作系统(RTOS)……
摘要:手机属于嵌入式设备,手机软件平台使用的操作系统属于嵌入式OS的范畴。传统的功能手机(Feature Phone)使用了实时多任务操作系统(RTOS)为基础的手机软件平台。入门级的智能手机采用了半开放的嵌入式OS(比如Symbian),而今天高端的智能手机多采用Android和IOS这样的通用型的OS……
摘要:为你介绍那些开源的操作系统,Android以及它的竞争对手们的整个OS产业生态……
摘要:根据IEEE 2009年2月的报告,豪华级别的汽车的软件代码长度将超过1亿行,如此巨大的代码量不使用嵌入式操作系统(以下简称嵌入式OS)和软件平台架构是不可想象的,以此联动产生的软件研发、测试和维护成本也是巨大的,带给汽车的安全性和可靠性隐患更是无法预估的。由此也成为嵌入式Os逐鹿的新战场……