中立认识对嵌入式linux的评价!各位欲使用嵌入linux的注意了!

yeming   2008-5-20 17:45 楼主
这是我转摘得文章。各位欲使用嵌入linux的注意了!这里的linux是指嵌入式的不要混淆了!
2008-05-09 上周,Green Hills Software(GHS)就嵌入式Linux撰写了一则措辞严厉的观点,下面就是它的开场白:“Embedded Linux是迄今为止最夸大其词的嵌入式操作系统。它吹嘘为廉价、高质量、高生产率、可靠、应用范围广以及得到很好的支持,可是,恰好相反...”Green Hills接着恭贺Linux供应商承认这种操作系统是“一片混沌”(要谢谢风河!)且是“无底洞!”(也感谢你,MontaVista!)然而,赞扬是短暂的,据GHS透露,这种愤世嫉俗的工作方式会让你惊恐,以至于无法利用Linux自己编写操作系统,而最终变为风河或MontaVista的客户。那是有些强硬的谈论,但是,GHS并不是中立的观察家。这家公司销售自己的操作系统,因此,它坚持由宣讲对Linux的恐惧、不确定性以及疑虑而获益。的确,我所交谈过的每一家供应商均在Linux上采取显然有利于自己的立场。下面是我听到的若干例子:
MIPS:自我编写的Linux非常管用!直接访问Linux MIPS并下载!我们的Linux支持我们成为赢家!
Wind River, MontaVista:免费的Linux是一场灾难。然而,我们才提供“真正”的Linux,否则的话,你将在键盘面前不知所措!
QNX: Linux是一场灾难。然而,我们的类似Linux的RTOS确实伟大的!
Microsoft: 晕!你为什么会看上Linux?如果采用WinCE,生活会更轻松!
Mentor Graphics: Linux?WinCE?你简直在开玩笑!你可以从像Nucleus那样轻量的RTOS中获得你想要的一切。
有一件事情是肯定的:没有人说Linux存在真正的缺点。然而,哪一家供应商说的是真相呢?或者说,他们希望促销才撒谎的吗?实际上,每一个观点均包含合理的成分。每一个项目均具有独一无二的要求,因此,不同的项目会寻求不同的操作系统。下面我(无党派人士)列出了当评价嵌入式Linux时你应该提出的问题:你需要全功能的操作系统吗?嵌入式Linux很大,通常代码长度超过2MB。当然,你可以通过裁减像网络堆栈以及文件系统这样的功能而压缩操作系统,但是,这些功能正是你要采用Linux的主要原因。如果你不需要这些功能,你最好采用精干的RTOS。你能够获得针对特定应用功能的操作系统吗?WinCE就提供无数的版本,包括专门为汽车应用而设计的版本。(QNX也一样)。Nucleus提供针对便携式媒体播放机的公用的特殊功能。不一而足。许可的模式是什么?Linux General Public License(Linux通用公共许可)存在其缺陷。如果你想修改内核要怎么做?然而,不要指望把你乱砍之后的内核与其它人分享?如果未经授权的代码溜进内核之中会怎样?所有者是否应该决定控诉?对于生命期长的产品,如汽车和网络基础设施来说,像这些问题就是主要的问题。我们当中其他人常常忽视法律问题并且在下一个产品版本中简单地升级内核。Linux会做出响应并足够可靠吗?我了解你在想什么:嵌入式Linux是专门为解决这些问题而设计的吗?是的,但是,嵌入式Linux无法匹配像INTEGRITY这样的操作系统。
你愿意现在付费或是以后付费?自己编写Linux操作系统是免版税的,但是,你必须做出重大的工程投资以及构建它并让它跑起来。相比之下,商用的Linux软件包(或竞争操作系统)能够让你以最小的前期投资成本进入市场。你要付运多少产品?如果你的批量小,让你的操作系统团队急急忙忙自己开发操作系统的做法就没有意义。你的上市时间如何?如果你赶着上市,那么,自己编写操作系统的方法也没有什么意义。对你的特殊的处理器、电路板或参考设计提供技术支持吗?提供最佳技术支持的操作系统将给予你最低的NRE以及最短的上市时间。你需要对接你的现有代码吗?大多数项目均是在现有的代码上构建的。如果在对接代码上浪费太长时间,你就会丧失转换操作系统所获得的好处。(你实际上可以跳过这个问题,但是,会增加系统的另一层复杂性。)你的工具链支持操作系统吗?如果不是,你就要转换。这就增加了学习曲线并让设计团队不稳定。如果你愿意转换工具链,要寻找如MIPS的Linux热点分析仪这样的具有操作系统的功能。不论你对嵌入式Linux做出什么决定,但是,公司的MUTLI IDE自从2001年起就支持嵌入式Linux。要自问:如果GHS真的认为嵌入式Linux是一场灾难,为什么这家公司为它提供支持呢

回复评论 (7)

有道理,但LINUX还是有它的特点的,如果技术支持过关,它的优势还是比较强的.
点赞  2008-5-21 09:24
不知道从哪里转的,乱七八糟呀。
随便找一句话:
如果你想修改内核要怎么做?然而,不要指望把你乱砍之后的内核与其它人分享?如果未经授权的代码溜进内核之中会怎样?

什么意思?语句通顺吗?标点符号都点不好,真怀疑是不是猩猩在键盘上敲出来的。
点赞  2008-5-21 16:13
俺是仔细用过uclinux的才转的文章!没有经验的菜鸟不要捣乱!linux适合任务较多的场合。还有就是一些linux的资源。但是在嵌入系统这些都没有优势!听着菜鸟!要先学做人!
点赞  2008-5-21 18:13
有一点,uclinux适合于自我娱乐!!它有其它系统无法带来的快乐。
点赞  2008-5-21 18:38
hoho。。。。请注意,我针对的不是Linux,而是这篇文章。我说的是这篇文章不通顺,至于Linux是否好,是否优势,我可没说,这是诺基亚三星那些大公司都没法定论的事,你能定论?

或许我在Linux上水平不如你,但是在文章水平上,你未必比的上我。

你用WM吗?你用WINCE吗?你用ucOSII吗?你用VxWorks吗?你用Linux做过几个量产的项目?你用这些系统做过几个量产项目?没有经历产品的考验,就敢说对系统了解吗?

我们在Linux 2.4.19时,做PMP,用QT做界面,GIF动画,还和Real公司合作了Real解码器,你做过吗?
点赞  2008-5-22 11:22
WINCE用过,ucOSII用过。VxWorks没用过也不了解。向你说的linux有QT、real解码器。不知道你是在一个什么系统资源下用的?不知道你在一个资源受限的资源下做过开发吗?我猜你可能没有。因为你的说法里有这样的意思。我用unix做过应用。见到过IBM的人做过linux业务迁移。但就成本来说linux的成本要高一些。可能对于网站应用或是什么其他可用性要求不高的应用。我也建议使用linux。在一个建筑设计院,我用linux架过文件服务器。也在天津架过邮件服务器。可是这些是在资源很丰富的情况下。要求也不是很严格的情况下。不要忘了我说的嵌入linux。嵌入这行业的任务多数是固定的有限的。考虑成本linux不是很合适!
点赞  2008-5-22 11:58
我只在嵌入式应用Linux,PC平台上不用。ARM9, 32MB/64MB内存,32MB NOR flash/64MB NAND都行。可以看到,这是最低档次的了,再小就不是ARM9的系统了,ARM7系统只会用ucLinux,而Linux/WINCE都不适合ARM7。

其实嵌入式是会裁剪很多功能的,占用并不大。对比的感觉,程序运行的效率、显示效果和(中断)响应速度比WINCE还要好。不过那时是和wince4.2对比,现在用ce6.0,已经不用linux了,所以不好说。

Linux看起来开源免费,却绝不适合一般开发者和公司,因为将其移植并形成可稳定量产的产品,需要投入的人力太大。比较适合工业类、军用类产品,不适合消费类。
WINCE/Mobile是商业化的系统,有M$负责支持,可以省略很多系统驱动级的投入,形成产品更快。

所以,能在消费类产品中大量用Linux,只有诺基亚这样的大公司了。
点赞  2008-5-22 15:13
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复