打印

【转载】《嵌入式操作系统史话》之六:开源的嵌入式OS

[复制链接]
1037|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kfliuyan|  楼主 | 2014-5-29 14:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在讨论开源的嵌入式操作系统(简称嵌入式OS)之前,我们先把开源软件搞清楚。“开源软件”目前并没有明确定义,也没有标准许可证。许多公司采用开放源代码一词,大概有这样两种情况。第一,开源软件的许可条款是一个组合条款,并不都是GPL。比如Android里面就有多种许可证(GPL、Apache和BSD)[1]。我们知道Linux 内核是采用GPL,用户任何修改必须开源给社区。Android 的许可可以让用户为自己的应用制作专用软件(遵循Apache和BSD许可)。第二,一些商业软件称自己是开源软件,其实它们只是开放源代码给用户或者大众,让大家免费评估和试用,如果你真正的使用在商业项目了,需要技术服务了,那对不起,他们要收费了。这样的开源软件不属于我们本篇讨论的范围。
沙发
kfliuyan|  楼主 | 2014-5-29 14:48 | 只看该作者
Linux
由Linus Torvalds在1991年发表的Linux开放操作系统,是由在互联网上的志愿者们开发的,吸引了许许多多忠实的追随者,自1999年稳定的2.2 版本发布以来,Linux早已经在服务器和台式机上取得了巨大的成功,正在嵌入式系统中大放异彩。许多人认为Linux可以获得在嵌入式市场上的认可,真正的关键的原因是得益于Linux高质量和其生命力,当然可以给Linux开发人员提供了灵活性和开放源码选择,不收取运行时许可使用费也是开发者选择Linux的理由。与商业软件授权方式不同的是,开发者可以自由修改的Linux,以满足他们的应用需要。在技术上,因为基于UNIX技术,Linux提供广泛的功能强大的操作系统功能,包括内存保护、进程和线程,以及丰富的网络协议,Linux与POSIX标准兼容,从而提高了应用的可移植性。Linux支持多种微处理器,总线架构和设备,通常情况下,芯片公司的驱动程序,应用相关的中间件,工具和应用程序都是先为Linux开发的,后来移植到其他OS平台,这些特性都非常适合于嵌入式系统应用。

使用特权

评论回复
板凳
kfliuyan|  楼主 | 2014-5-29 14:49 | 只看该作者
Montavista Linux
谈到嵌入式Linux,MontaVista是一定要提到的,它对于Linux在嵌入式系统商业应用起到重要的作用,MontaVista创始人和首席执行官正是第3篇里面讲到的Jim Ready,他是公认的商业操作系统的先驱,有超过25年在嵌入式软件行业的经验。当他还在Ready System时候,他就关注Linux的发展,93年他曾下载过0.98版本Linux并尝试运行起来,他预见到Linux将成为未来影响嵌入式市场的一个重要因素。1999年在Alloy创业投资公司的支持下,Jim开始建立一个嵌入式Linux软件工程师的公司,目标是开发一个嵌入式Linux 软件平台,也就是Hard Hat Linux。如图1戴帽子的企鹅的宣传画。2001年Hard Hat Linux 2.0 版本发布之后,在Red hat(红帽)公司一再要求下,产品改名为Montavista Linux,之后陆续发布了2.1/3.0/3.1/4.0和后来5.0 版本。从技术上看,Montavista Linux不只是一个通用的Linux发行版,它更是为嵌入式系统所需的可靠性和实时性(通过对2.4内核加入实时补丁)而精心设计,支持高端嵌入式系统使用的处理器架构x86、ARM、PowerPC 和MIPS 、一系列的驱动程序和板级支持包。它有一整套的开发工具,闪存和固态存储文件系统,还有可以很容易地监视系统的完整性和性能的各种工具[2]。

使用特权

评论回复
地板
kfliuyan|  楼主 | 2014-5-29 14:49 | 只看该作者
Montavista创建以后的10年间,借助开源软件之势,迅速发展,并成功的将其Montavista Linux应用在通信基础设备,智能手机,数字电视机和机顶盒等各种嵌入式系统中,国际顶级的设备制造商纷纷采用它的技术和产品,比如NEC、Motorola和三星电子。Montavista Linux 的出现对于传统的商业RTOS 是很大的冲击,客户逐渐认识到开源软件的价值,纷纷转向开源,遵循开源规则的Montavista就是最好的选择之一,虽然期间也有几个竞争对手,比如1995年在匹斯堡成立的timesys,虽然也有着不错的产品,但是毕竟远离硅谷又不熟悉嵌入式软件运作模式,所以没有形成对Montavista 威胁,真正的威胁还是传统的RTOS巨头,当他们认识到开源软件潮流已经到来的时候,市场的竞争才真正到来了。经历几轮的风险投资,Montavista 没有能够实现盈利预期,再经过2008年金融危机的冲击,2009年Montavista被半导体公司Cavium收购。

使用特权

评论回复
5
kfliuyan|  楼主 | 2014-5-29 14:50 | 只看该作者
Red Hat的eCos
eCos全称是Embedded Configurable Operating System,它出生于1997年,可以说是嵌入式领域的一个后来者,相对其他的系统来说,它非常年轻,在设计理念上面是比较新颖的,eCos绝大多数代码使用C++写作完成。eCos最早是Cygnus公司开发(该公司成立于1989年,大家一定知道Cygwin吧,就是他们开发的),1999年被RedHat收购,2002年RedHat因为财务上的原因放弃了RedHat项目,解雇了eCos的开发人员,2004年在eCos开发者的呼吁下,RedHat 同意把eCos版权转给开源软件基金会。之后,eCos主要开发人员组建了一个新的eCosCentric公司,继续进行eCos的开发和技术支持。

eCos 最大的特点是模块化,内核可配置。如果说嵌入式Linux太庞大了,那么eCos可能就能够满足你的要求。它是一个针对16/32/64位处理器的可移植开放源代码的嵌入式RTOS。和Linux不同,它是由专门设计嵌入式系统的工程师设计的。eCos提供的Linux兼容的API能让开发人员轻松的将Linux应用移植到eCos。 eCos 的核心具备一般OS功能,如驱动和内存管理、异常和中断处理、线程的支持,还具备RTOS的特点,如可抢占、最小中断延迟、线程同步等。eCos支持大量外设、通讯协议和中间件,比如以太网、USB、 IPv4/IPv6、SNMP、HTTP等。


eCos的专利受eCos 许可证所保护,这是一个GPL 许可证的修改版,其准许开发者在其上开发的应用程序(即eCos 以外自行撰写的部分)可以不用跟着GPL 一起发布。应用程序开发者可免費的取得其完整的源码,并针对其作任意的修改与在其上开发自己的应用程序并发布,唯一的限制只是若有修改到eCos 本身,其需将修改的源码回报給eCos 开发小組。当开发者将其当为产品时,也不需支付版税。

许多公司都在使用eCos,并先后成功推出了使用eCos的嵌入式产品,比如
Brother网络彩色激光打印机、DelphiCommuiport车载信息处理系统、IomegaHipZip数字音频播放器、Ikendi指纹识别系统、3Glab移动电话、GPS卫星地面设备等。

使用特权

评论回复
6
kfliuyan|  楼主 | 2014-5-29 14:50 | 只看该作者
Android
Android是谷歌公司开发的针对高端智能手机的一个操作系统(OS),其实Android不仅仅是一个OS,也是一个软件平台,可以应用在更加广泛的设备中。在实际应用中,Android是一个在Linux上的应用架构,优势是能够帮助开发者快速地布置应用软件。Android成功的关键是它的授权方式,它是一个开源软件,主要的源代码的授权方式是Apache,该授权允许使用者在Android源代码上增加自己的知识产权,而不一定要公开源代码。


直到今天,Android 的开发主要还是集中在移动终端上,这是谷歌的主要目标市场,相关软件IP和开发工具也都是针对这个市场设计和配置的,在这个市场上Android已经成为智能手机市场占有率最大的OS。在其他的市场上Android也的潜力巨大,一般来说,任何有复杂的软件需求的地方,一个封装好的有连接和用户界面的设备,比如车载信息系统(IVT),智能电视,Android 都会有用武之地。消费电子,通信,汽车电子,医疗仪器和智能家居应用都是Android 潜在的应用目标,但是Android 要从移动终端应用真正的走出来,确实很有挑战[5],目前我们看到的是在平板电脑和智能电视上Android 有不错的表现,基于Android 照相机、智能手表和电视盒已经出现,更多的应用也在开发之中。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

108

主题

793

帖子

1

粉丝