创新,首先要摆脱羁绊
——嵌入式软件开发跨入平台时代
idc最近的一份市场研究报告显示,电子产品制造业每年对全球gdp的贡献在1万亿美元以上,其中的核心是可编程半导体器件。然而,全球经济形势的震荡与衰退告诉人们,必须在把握关键因素、有效控制风险的前提下持续不断地推出新产品,才有可能在市场上立于不败之地。此所谓逆水行舟、不进则退。然而,可编程半导体器件中的灵魂——嵌入式软件的开发却遭受到很多羁绊。
可编程器件主要由硬件和软件两个部分构成。其中,硬件部分的成本控制、设计技术和外包生产商的选择都已经非常成熟,而软件部分所遇到的问题和挑战越来越多,这就是嵌入式软件的开发工具和方法问题。软件对于整个产品满足客户需求和保持市场份额来说越来越关键,而与此相关的成本和时间控制难度越来越大。实际上,许多电子产品生产企业用于嵌入式软件开发的方法和工具仍处在“作坊”时代,这就在成本、时间和技术三个方面对企业进行新产品开发构成了羁绊。特别是在当今电子产品制造业盛行oem产销模式下,嵌入式软件是决定产品竞争力的核心之一,而其优劣则直接取决于嵌入式软件开发平台的优劣。提升嵌入式软件开发平台的水平,应该从哪里做起呢?
系统集成是最佳切入点
据对全球前数十家电子产品厂商的调查显示,用于嵌入式软件开发的费用每年达到230亿美元,其中91%用于对各种嵌入式软件模块进行集成,而真正用来购买这些软件和服务的费用只占9%。
与常见的pc和服务器软件不同,嵌入式软件主要是对设备内部各部分的运行进行协调,并不与设备使用者发生直接接触。pc和服务器软件的运行环境是标准化的,而嵌入式软件的运行环境随电子设备的不同而不同,必须针对不同的电子产品进行专门的设计、开发和优化。事实上,目前电子产品公司用于购买操作系统和中间件的费用很少,绝大多数费用都花在了系统集成和应用层的开发上,其中选择供应商、熟悉供应商提供的软件以及集成工作占用了将近50%的开发时间。这种手工作坊式的开发方法造成了巨大的人力和财力资源浪费。
现在,越来越多的电子产品厂商采取oem的方式把硬件制造外包出去,产品的竞争优势更多地体现在软件设计上,软件工程师扮演的角色也因此越来越重要。idc的调查显示,在典型产品开发项目的全部人工费用中,软件工程人员的费用在20世纪90年代初期到中期约为55%,如今已经达到75%。所以说,降低软件的人工费用是降低产品开发整体费用的一个重要突破口。
商业化成为主流趋势
10多年前,嵌入式操作系统都是由各电子产品厂商自己开发,但如今人们已经普遍接受了嵌入式操作系统的商业化。随着市场需求和技术的发展,不仅操作系统应该商业化,开发环境和中间件也逐渐进入商业化阶段。
在科学技术的世界里有一个通行的规则——站在前人的肩膀上,充分利用前人已经取得的成果,把自己的精力专注于自己具有独特竞争优势的地方。在嵌入式软件开发方面,通过购买的方式取得前人已有的研究成果,就是这种通行规则的重要体现。实际上,除了嵌入式操作系统,市场上还有无数可重复使用的商品化嵌入式软件模块。
例如,wind river公司等一批嵌入式软件供应商通过多年来的积累,已经开发出许多通用的嵌入式中间件,但许多客户并没有采用它们,而是耗费大量的内部资源去做重复性的工作,在入门和集成这两个环节造成了不必要的资源浪费。也有一些用户已经花了大量的金钱购买这些商用软件,但是由于这些商用软件在系统集成方面所做的工作不够充分,还要用户在这些方面花费大量的人力,显然对这些商用软件所带来的实际利益大打折扣。
近期,wind river推出了风河平台(wind river platform),不仅包含了各行各业常用的嵌入式软件开发工具,而且在系统集成方面做了大量的工作,就是希望让电子产品公司意识到,不必自行开发那些人人都有的通用功能,而应该释放出更多的资源去提升自己的独特竞争力。风河平台可以让用户感觉到:现在集成真的可以买得到,而且买得起。另外,microsoft windows ce、linux等嵌入式开发工具进入这个市场,也为这个领域带来了新的商业模式。
平台化步入成熟阶段
要提高嵌入式软件的生产效率必须解决两个问题:一是不必要让所有的软件从头到尾全部都由自己开发;二是所编写的应用软件有高度的可重用性。要解决这两个问题,就需要嵌入式软件供应商提供平台化的嵌入式软件开发环境。例如,美国风河公司就是在这一形势下推出了自己的嵌入式软件开发平台。
嵌入式软件开发平台应具有层次高、硬件支持范围广、高度集成、高可靠性等特点,而且入门费用比较低廉,便于广大用户接受。
所谓“层次高”是指嵌入式软件开发平台不仅仅是一个嵌入式操作系统,而是集操作系统、开发工具和中间件于一身的开发环境。用户可以从中间件以上的层次开始自己的开发工作;
“硬件支持范围广”是指嵌入式软件开发平台支持常见的32位以上流行的微处理器,用户不会因为硬件的变化而更换软件平台;
“高度集成”是说平台不是模块的简单堆积,而是有机的集成。用户不用关心平台中模块间的相互协调,而是专注于应用程序的开发;
“高可靠性”平台的目的是使用户可以专注于开发应用程序。如果平台本身问题很多,用户必须花费很多时间来理解平台进而发现其中的问题,这样失去了平台化的意义。
入门费代表一项技术的进入门槛。平台的另一个含义就是标准化,而标准化的重要体现就是有广泛的用户群。
多年来,与标准化的服务器和pc软件相比,嵌入式软件开发工具是一个相对封闭的领域。可是近年来随着microsoft windows ce和众多嵌入式linux进入这个领域,这种封闭的局面开始被打破。通用性、商业化、进入门槛低,是这些后来者的优势。但是,在系统可靠性和开发使用经验方面,wind river这样的嵌入式软件专业厂商仍然占据着优势地位。尤其是在航空航天、国防军工领域,对系统可靠性的要求极高。而风河公司这样的专业嵌入式软件提供商的产品可靠性是经过业界广泛使用而证明了的。
面对windows ce和嵌入式linux的大举进攻,风河这样的传统嵌入是软件厂商也积极应对,调整了商业模式,大大降低了商业化嵌入式软件开发平台的进入门槛。让电子产品企业在可靠的商业化平台上进行标准化的开发工作,这就是专业嵌入式软件工具研发公司的价值所在。
行业化是平台化的高级阶段
一个新的电子产品的研发成功是电子产品厂商和嵌入式软件平台厂商共同努力的结晶。嵌入式软件平台厂商做的工作越多,电子产品厂商所必需做的工作就越少。嵌入式软件平台厂商必须从电子产品厂商的应用需求中提取共同的特性,并将这些特性融入自己的开发平台之中,只有这样才能使之在一定范围内具有适用性。
显然,相同行业对于嵌入式软件开发的需求具有许多共同的特性,行业领域是界定需求特征的重要依据。面向不同的行业应用,对嵌入式软件平台进行有针对性的定制,就比面向所有的行业提供相同的软件开发平台具有更好适应能力。也就是说,通过面向行业应用,嵌入式软件平台厂商可以为电子产品厂商提供更多的辅助功能和支持。
基于这样的认识,一些有经验的嵌入式软件专业厂商不仅长期研究嵌入式软件开发工作中的普遍需求,从中提取出共性的东西,形成普遍适用的开发平台,而且致力于研究分析不同行业对于嵌入式软件开发的特殊需求,推出了面向特定行业的嵌入式软件开发平台。
不久前,风河公司根据应用需求的变化,重新规划了产品线,分别面向消费电子产品、工业电子产品、国防军工、网络设备和汽车电子等领域推出了特定的嵌入式软件开发平台,统称为wind river platform。其中集成了操作系统、开发工具、连网模块、通信接口、设备管理等模块,为电子产品的开发提供了全方位的支持。 wind river把相关的中间件、协议和工具组合起来,为不同的行业提供相对通用的基础模块。这种做法不仅改变了wind river的业务模式,也改变了wind river的客户乃至整个嵌入式软件行业的工作模式,为电子产品生产企业提高客户满意度和产品市场竞争力提供了更加直接的支持。
总的来说,嵌入式软件开发平台化的趋势正在加剧,商业化的嵌入式软件开发平台正在迅速取代企业自有的开发工具,面向各个行业的嵌入式软件开发平台正在赢得电子工业的广泛认同。