如何选择嵌入式软件开发平台

慕尼黑

不久前,市场研究机构embeddedmarketforecasters(emf)发布了一份报告指出:与嵌入式linux平台相比,基于microsoftwindowsembedded操作系统平台进行嵌入式系统开发,速度快43%,开发成本低68%。得出这个结论所采用的是tcd(totalcostofdevelopment,开发总成本)。

这个结论一经发布,可谓一石激起千层浪,热衷于嵌入式linux的人们纷纷出来辩论,对其提出质疑。人们首先要怀疑这份报告的公正性,因为报告作者——emf分析师jerrykrasner博士公开承认,微软为他做出这份研究报告向他支付了费用。

在包括嵌入式软件在内的大多数软件领域,微软的地位无疑是非常重要的。linux不仅因为继承了unix的技术特色,更因为开放源代码而在商业机制上与一贯封闭的微软相对垒,赢得了众多口碑。不过,我们不应该忘记,在嵌入式软件开发领域并不是两军对垒,而是三足鼎立。这里还有一个非常重要的阵营——商业嵌入式软件开发五金|工具提供商,例如windriver的vxworks。

在激烈竞争的商业环境中,谁都希望以更低的成本、更快的速度推出满足市场需求、具有独特竞争力的产品呢。那么,嵌入式软件开发平台究竟应该采用什么样的衡量标准呢?哪一种嵌入式软件开发平台更能有效地帮助电子产品开发商降低产品成本、加快上市速度呢?为了对这些问题有一个全面的认识,让我们对来自微软、嵌入式linux和商业嵌入式软件开发商的声音做一个全面的了解。

争执,从衡量尺度开始

衡量任何事情,都必须先有一个标准的尺度。为了说明什么样的嵌入式开发平台最经济有效,首先必须形成一套衡量标准。在这个关键问题上,的确是公说公有理、婆说婆有理。究竟谁的对,我们不妨来个“兼听则明”。

受微软公司的委托,emf研究机构krasner博士所提出的报告标题是《tcd:嵌入式开发平台的成本评估框架》,其中首先针对如何评估一个嵌入式软件开发平台提出了一套方法。krasner博士说:“tcd(totalcostofdevelopment)评估框架可以帮助嵌入式设备制造厂商评估他们花在软件设计中的总体成本,从而便于他们提高开发设计质量,控制开发设计成本。”

krasner博士在报告中提出了这样一个模型:

tcd=ttmxnoexcpmm

其中:

ttm(timetomarket)为产品从开发工作开始到上市所用的时间,以“月”为单位;

noe(numberofengineersused)为开发该产品所需的工程师数量;

cpmm(costperman-month)为每个工程师每个月所需的费用。

krasner的调查结果认为:windowsembedded平台的平均ttm为8.1个月,而嵌入式linux平台的平均ttm为14.3个月,前者比后者快了43%;从对软件工程师的需求来看,windowsembedded平台中每开发一个产品所需的平均工程师数量为7.9人,而嵌入式linux平台需要14.2人,前者比后者节省44%。不管是在哪一种平台之中,调查报告把每个嵌入式软件工程师的平均月成本都假定为7500美元,从而得出结论:windowsembedded平台中,每个项目的tcd为48万美元,而嵌入式linux的tcd为150万美元,前者大约只是后者的四分之一。

krasner博士对如此之大的差别所作的解释是:windowsce.net和windowsxpembedded更为成熟,功能更加丰富,采用基于构件的设计方法,具有集成化的工具集,支持并行开发工作流程。

然而,热衷于嵌入式linux的人们对这样的结论非常不以为然,并且提出了强有力的反击。

jerryepplin是一家名为embeddedspace的嵌入式系统咨询公司的首席咨询师。他尖锐地指出:嵌入式开发平台的评估方法应该准确地衡量开发工作中的全部因素,ttm和tcd的确是很重要的因素,但是,除此之外还有很多不可忽视的因素。例如:

•产品差别化:采用廉价方法开发的产品并不一定能够在市场上获得独特的竞争力;

•产品成本:采用能够运行在较廉价的硬件平台上的嵌入式操作系统,将会使产品成本大幅度降低,从而在市场上具有更强的竞争力;

•工具的延续性:如果嵌入式软件开发者长期采用同一个平台,并且积累了大量的工具软件和开发经验,必将在产品功能、性能和成本方面占据更大的优势。另外还有其他许多因素都应当纳入嵌入式软件开发平台的评估体系之中。如果只是拿出来一两个指标来衡量,其结果一定是片面的。

真正应该关注的是tcp

krasner博士提出的嵌入式开发平台tcd评估方法不仅非常简单,而且完全站在了微软的立场上,当然是树大招风,而且由于过于简单而显得非常脆弱,很容易受到攻击。反过来,对于简单而直截了当的结论,最有效的攻击方法莫过于让事情复杂化,即使自己提不出任何明确的结论,至少能够让对方的论断受到怀疑。这就是jerryepplin所采用的办法。 <

  • 如何选择嵌入式软件开发平台已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计