目前,对高技术产品和组件的需求量之大前所未有,产品制造商可以通过嵌入式软件开发最佳实践来挖掘市场潜能,并通过低成本维护、缩短产品上市时间来获利。产品制造商和开发者在这样的形势下,如何获取成功?
机会无处不在,也许你在阅读本文时,嵌入式设备正存在于你的周围。虽然大多数人并没意识到,但这些嵌入式设备确实在不断影响着我们的日常生活。
以消费电子行业为例,可以说嵌入式软件在消费类产品中的增长速度是最快的。近年来,消费电子行业已经对嵌入式软件的发展起到了很大的推动作用。传统的生活方式深受“数字生活”潮流的影响,从工作到娱乐,从娱乐到工作,人们对高新技术产品的需求从未如此巨大过。
“数字生活”中,最显而易见的方面包括正在如火如荼开展的数字电视革命,信息和数据在数字电视网络上大行其道。亚洲领导着全球IPTV的革命,嵌入式软件就像三星的Anyview TV和IP机顶盒(IP-STB)在新一代网络媒体设备中扮演的重要角色一样,已演变成数字家庭的完整部件。
数字录像机和高清晰DVD播放器也像Toshiba这个品牌一样,已经逐渐进入我们的居家中。在工作中,我们拥有兼容Windows Vista的LCD网络投影仪。在路上,便携式导航设备已经成为小型汽车的标准配置,而对GPS设备和智能手机的需求也在持续增长。
为项目选择最合适的操作系统
嵌入式设备的软件平台是确保该设备完全具备既定功能的要素。厂商首先需要对设备在功能要求和硬件配置上作短期和长期的评估,并估量哪种操作系统最能适合这些需求。操作系统将自始至终影响开发周期、许可证成本、成品的可靠性和安全性。
如今的消费电子产品市场竞争非常激烈,而产品却因具备了越来越多的特性而日益复杂。为了在同类产品中突出自己的特色,这就要求操作系统既小巧又功能强大,并且能够非常容易地同时处理多项任务。
操作系统的实时响应能力同样在高端消费电子设备和网络媒体设备中备受关注。例如,IP机顶盒就需要对特定事件作出具有快速及预见性的响应,而不是一般意义上的先接受大量任务再进行处理。能胜任这些需求的典型代表是Windows Embedded CE 6.0,它为下一代的智能、联网、多媒体和小内存耗用设备的快速开发提供了一套强有力的工具。
同时在Windows Embedded诞生十周年之际,微软首次在“共享源计划中100%毫无保留地开放Windows Embedded CE 6.0内核,比Windows Embedded CE的先前版本的开放比例整体高出56%。
设备制造商可以使用Windows Embedded CE 6.0这个工具包为不同的非桌面设备构建定制化的操作系统映像。通过获得Windows Embedded CE源代码的某些部分,比如:文件系统、设备驱动程序和其他核心组件,嵌入式开发者可以选择他们所需的源代码,然后编译并构建自己的代码和独特的操作系统,迅速将他们的设备推向市场。
适应性强的流线型开发周期
嵌入式行业面临多重挑战:OEM既需要在全球市场中快速创新,又要降低成本并保持自己的竞争力。他们同样需要确保产品的操作系统和微处理器具有更强的性能和可靠性。操作系统的选择对开发时间会产生深远影响。通过选用像Windows Embedded CE 6.0这样的操作系统,OEM就可以将注意力集中在开发产品的特性上,而不需要自己再分辟精力开发操作系统,以及调试种种与操作系统有关的bug等。这样,他们也把自己从操作系统供应商的角色中解放出来,不需要努力去向市场推销新的操作系统。此外,与嵌入式项目开发和消费电子设备生产中有成功经验的合作伙伴合作,也同样有助于项目的开发。
拥有大量成熟的开发者可以有效降低学习曲线,如果需要,成熟的开发者团队可以有效缩短开发时间。嵌入式软件公司可以提供包括集成开发环境(IDE)、编译器、汇编程序和调试器等所有工具,帮助开发嵌入式软件。
这里有一个电子制造商Mobile Crossing的学习案例,让我们看看他们如何利用流线型开发周期漂亮地完成一个重要订单。
Mobile Crossing只有不到5个月的时间,去完成一个主要客户?D联邦政府的订单:开发一种便携、耐用的内置GPS设备,且具备强大的图形化显示、高速和高可靠性能。
为确保订单能够按时交付,选择正确的操作系统至关重要。Mobile Crossing需要一个为电池进行优化的强大的操作系统,而提供的手持设备必须能够快速开发,并兼容市场上的各种应用程序。该公司通过对开源操作系统的评估,他们发现及时获取该类操作系统的内核有困难。作为替代,他们选用了微软公司的Windows CE 5.0作为嵌入式系统开发工具,于是该公司拥有了丰富的本地及托管应用程序工具,以及大量具有开发经验的专业开发人员可供挑选。最终,该公司以较低的成本,仅用4个月的时间就完成了从概念到成品的整个过程。
为工作选择合适的工具
开发工具、组件和技术支持都可以从活跃的社区或供应商处获得。
在一个网络媒体设备的开发中,OEM常常被迫不断以高价购买构建成品所需的各种组件。如:操作系统(Linux/开源)、媒体回放、网络和设备驱动程序、用户接口、解码器、DRM等,最后再将它们整合在一起。尽管开源操作系统的确具有优于商业化嵌入式操作系统的地方,但在开源操作系统中,却对关键的网络、设备驱动程序、媒体引擎(包括解码器)需求滞后,OEM需要到处求购第三方中间件,而这些被耽误的时间则可以用于开发产品的特色上。
另外,商业化嵌入式操作系统供应商根据OEM的需求,定期发布产品更新程序或新功能包和软件新版本等,并对产品需求的支持具有前瞻性。该功能包内置了中间件组件,而且提供了所有的关键网络、设备驱动程序和解码器,而不需要第三方中间件。
保护你的知识产权
软件的构建不只是一些复杂的代码,更是一系列复杂的知识产权集合。这些知识产权是该软件企业创建新产品的基础。嵌入式设备制造商应该认真做好知识产权风险管理,并确保他们的软件具备所有相应的知识产权,以避免遭遇不必要的风险。例如,微软公司可以为所有的分销商,以及所有使用其嵌入式操作系统的嵌入式OEM提供世界范围内的专利权、版权、商标、商业秘密和法律保护等方面的知识产权保护。
此外,很多使用Linux操作系统的公司采用基于GPL许可模式的授权,如果不把对内核的改进成果回馈给开源社区,就势必会违反GPL。通过使用Windows Embedded CE 6.0和提供共享源代码,任何改进成果属于制造商自己,而不需要去公布它。