milkyway的窝

最初想法的诞生地

 

嵌入式系统之Linux vs WinCE

来自 http://blog.csdn.net/saintony/category/226987.aspx

计算机最大的市场是嵌入式设备。基本上,含有计算机但是外表并不象计算机的一切设备都可算嵌入式,包括网络设备(如路由器),工控设备(如数控机床),汽车,信息家电, 移动计算设备等各种设备。那么,在这个最大的市场中,Linux和Windows谁更有实用性呢?让我们先分析一下嵌入式领域对OS的要求。
 
嵌入式领域与PC领域有很大的不同,嵌入式系统都是针对具体应用的专用系统,其软硬件需要面向应用来设计,并且由于嵌入市系统领域极其广泛,不同领域所采用的技术各不相同,所以长期以来,嵌入式领域一直没有形成PC和Server领域的标准化和垄断性,Intel,Microsoft都不是霸主,仅常用的CPU就有数十种之多,常见的有Arm,MIPS,PowerPC等系列芯片,嵌入式操作系统也有数十种,Vxworks,QNX,Symbian,PSOS,Linux,WinCE等等。
 
归结起来,嵌入式设备有如下特点:
1.成本敏感,资源有限多数嵌入式系统具有成本敏感性,它的硬件和软件都必须高效率地设计,量体裁衣、去除冗余。好的嵌入式系统是完成目标功能的最小系统,这样的产品才更具有竞争力。所以,多数嵌入式系统中的硬件资源是很有限的,如处理器速度较低 ,存储器空间较少等。这些都对嵌入式软件系统提出了更高的要求。
2.多种硬件平台嵌入式处理器众多,常用的也有数十种,各自具有一定的优缺点和适用范围。这要求嵌入式操作系统支持多种的处理器。
3.低功耗对于使用电池的移动计算设备来说,需要具备低功耗的特点。
4.安全性和可靠性高很多嵌入式应用,如工业控制,航天和网络设备都要求具有高安全性和高可靠性。有的要求在恶劣环境中,系统仍然能够正常工作。
5.部分要求实时许多嵌入式应用要求具有实时处理能力。如航天,工控等。
6.多数软件固化存储多数嵌入式设备软件固化存储在Rom或Flash中,较少使用磁盘。以提高其可靠性并减小体积。
 
以上都对嵌入式OS提出了独特的要求,让我们逐条分析评价Linux和WinCE/Windows的优缺点。
1.支持多种硬件平台由于嵌入式设备硬件平台的多样性,CPU芯片的快速更新,嵌入式操作系统要求支持常用的嵌入式CPU,如X86, ARM, MIPS, POWERPC等,并具有良好的可移植性。另外还需要支持种类繁多的外部设备。Linux支持以上几乎所有的主流芯片,并且还在不断的被移植到新的芯片上。而在这方面,WinCE显然差得很远。
2.占有较少的硬件资源由于多数嵌入式系统具有成本敏感性,处理器速度较低 ,存储器空间较少,这要求嵌入式OS体积小,速度快。Linux体系结构比较灵活,易于裁减,可以小到2M flash,4M RAM。而WinCE对资源的要求更高。
3.高可定制性由于不同的嵌入式应用对系统要求各不相同,这要求嵌入式OS具备高可定制性,能够根据需要方便的增加和减少各项功能模块。这一点对于嵌入式领域至关重要,而Linux由于图形系统不在内核中,且支持模块机制,内核可根据需要加入或去掉功能。其外围工具拥有众多选择,更由于可以自由修改源代码,具有极强的可定制性。而WinCE/Windows根本无法做到这一点。
4.具有实时处理能力实时应用分为硬实时和软实时两大类,嵌入式OS需要明确是否支持实时和支持哪一类实时应用,需要提供最坏情况响应时间为多长。Linux和WinCE/Windows最初设计时都没有考虑实时应用,但众多的实时Linux项目已使Linux具备了硬实时和软实时处理能力,硬实时有RT-Linux和RTAI,而2.6中加入了可抢占核心,使得Linux具备了软实时处理能力,此外还有Timsys和Montavista等实时Linux实现。Linux自由开发模式的优点得到了充分的体现。Windows虽然也有第三方提供类似于RT-linux的实时功能,但由于微软未提供这方面的支持,也由于Windows可靠性不能满足要求,很少有人在实时领域使用Windows。但RT-linux已经在美国航天部门,印度军方等得到了广泛应用。还有Montavista,Timsys的实时Linux都有很多成功案例。
5.具备强大的网络功能现在,越来越多的嵌入式设备需要具备网络功能。这要求嵌入式OS支持常用的网络协议和可靠的网络功能。Linux的网络功能经过几次改进,其效率,功能都很突出。且具有众多的网络工具,支持几乎所有常见的网络协议。这些使得Linux在网络设备中倍受青睐,很多防火墙,低端路由器等中使用的都是Linux。而未闻WinCE/windows在这方面有什么应用。
6.高安全性和高可靠性嵌入式设备往往对安全性和可靠性要求很高,这要求作为基础软件的嵌入式OS具有高安全性和高可靠性。如骨干网的路由器,交换机等。Linux的可靠性是经过实践检验的,并进一步向高端发展,冲击Vxworks, Unix的市场。安全性方面Linux病毒极少,并拥有众多安全增强,有的安全增强Linux达到了B1级别(红旗RFSOS通过了国家GB17859第三级,等同于TCSEC B1级)。而Windows病毒众多,漏洞不断,虽然微软大力宣传其通过了CC标准EAL4级,但是需要说明的是,EAL4仅仅说明Windows在多大程度上满足了它的安全目标,显然更为重要的是这个目标是什么,事实上,它通过的是CAPP的EAL4级,仍然相当于TCSEC C2级,Win2000的可靠性比起98等来说有了明显提高,但尚不足以向高端冲击,其安全性问题也会大大影响它的可靠性,这二者是紧密联系的,不能孤立讨论。
7.具有完善的嵌入式GUI和嵌入式浏览器面向用户的嵌入式终端设备如Smart Phone等,都要求嵌入式OS具有功能完善,控件丰富的嵌入式GUI,并支持功能强大的嵌入式浏览器。在这方面WinCE有完善的解决方案,Linux也有QT/Embedded等GUI,Opera等嵌入式浏览器,拥有众多的选择。
8.实现嵌入式日志文件系统,具备断电保护能力。这些功能Linux和Windows都能达到。
9.能够提供完善的开发工具集。Linux下的开发工具众多,但不如Windows开发工具易用。不过Windows的开发工具不是为嵌入式领域设计的,功能也不完善。
10.能够快速启动启动速度二者差不多,但很多嵌入式设备并不需要图形界面,且由于Linux有源代码,在硬件固定的情况下可以加速启动,这时Linux就比WinCE/Windows启动快多了。
通过以上分析,可以很清楚地看到,总体比较而言,在嵌入式领域Linux比WinCE/Windows具有明显优势。正因为如此,嵌入式Linux比WinCE/Windows应用领域要广泛的多。WinCE的优势在于PC衍生产品,如Pocket PC,高端PDA等。但在其他众多的嵌入式领域中,WinCE就并不适合了。在嵌入式领域,Linux与WinCE/windows均为后发,Windows不拥有在PC领域的垄断优势,二者公平竞争,这时更能清楚地看出他们的实用性差别和发展潜力。嵌入式给了Linux一个自由广阔的天地,充分体现出了Open Source的巨大优势,我们有理由相信:未来是Open的世界

posted on 2007-01-28 18:55 milkyway 阅读(2632) 评论(5)  编辑 收藏 引用 所属分类: 授人以渔

评论

# re: 嵌入式系统之Linux vs WinCE 2008-01-16 09:25 roman

太过偏激,微软已经开始动手和linux较量了。。谁输谁赢很难讲  回复  更多评论   

# re: 嵌入式系统之Linux vs WinCE 2008-01-30 17:12 kmalloc

不是偏激,微软仅仅是一个以盈利为目的的公司,而Opensourc是一种精神。
如果你是一个计算机的爱好者那请不要再用微软的骗钱产品了,如果你可以忍受被微软鄙视你们盗版,成为微软的奴隶那你继续。P.S你认为微软真的是没有办法阻止中国的盗版行为么?!! 它只是放长线掉大鱼。

  回复  更多评论   

# re: 嵌入式系统之Linux vs WinCE 2008-02-20 14:16 grin

未来是Open的世界
这个没错  回复  更多评论   

# re: 嵌入式系统之Linux vs WinCE 2008-04-08 08:42 sai

WinCE源码也open了  回复  更多评论   

# re: 嵌入式系统之Linux vs WinCE 2008-11-13 15:48 abc

对于产品开发来说,没有最好的,只有最合适的。至少在自己从事的消费类电子产品开发领域,觉得linux并不是很合适,wince则可以让产品更快地上市,虽然贵了不少。  回复  更多评论   


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理


导航

统计

公告

随笔皆原创,文章乃转载. 欢迎留言!

常用链接

留言簿(37)

随笔分类(104)

随笔档案(101)

文章分类(51)

文章档案(53)

wince牛人

搜索

积分与排名

最新评论

阅读排行榜

评论排行榜