第一章:导论
本章包含以下子章节:
- 为什么选择Linux操作系统?
- 现今嵌入式Linux的发展概况
- 开放源代码和GPL
- 标准及相关团体
- 本章小结
在许多开发传统嵌入式操作系统的公司内部,就是否抛弃掉专用系统的讨论一直没有停止过。很显然,Linux操作系统,在其擅长的服务器领域之外又开辟了新的疆土,它正在被很多电子产品采用。在嵌入式领域更是有很多产品中可见其身影:移动电话、DVD播放器、视频游戏、数码相机、网络交换机以及无线网络设备。很有可能在你的家中或是座驾上,Linux已经在为你服务了。
- 1.1 为什么选择Linux操作系统?
基于经济和技术方面的原因,我们看到了嵌入式设备采用Linux这种强有力的增长势头,这种趋势无形中已经跨越了所有的市场和技术。世界范围内公用的交换电话网络、全球性的数据网路,无线蜂窝手持设备以及网络运维设备等等等等都在运行Linux操作系统,甚至是汽车应用,以及像游戏产品,PDA,打印机,企业交换机和路由器等一些消费电子产品,Linux也取得了空前的成绩。嵌入式Linux市场的扩大似乎永无止境!
为什么嵌入式Linux会有如此迅猛的增长?
- 相比传统专用嵌入式系统,Linux操作系统是一种成熟的、高性能的和稳定的可选方案。
- Linux支持大量应用和网络协议。
- Linux拥有高可扩展性,从面向消费者的产品,到面向运营商的大型网络交换机、路由器,Linux都游刃有余。
- Linux的开放、自由特征,决定了部署Linux设备不用考虑使用专有系统无法摆脱的版税纠纷。
- Linux吸引了成千上万的活跃开发者,使用新硬件架构、平台和设备能够得到快速支持。
- 越来越多的硬件软件厂商,包括几乎所有的顶级厂商和独立软件开发商,都已经支持Linux。
不论是从上述角度还是其他方面,我们甚至看到,从高清晰度电视机到手机,越来越多的家居设备开发商加入了Linux的阵营中。
- 1.2 现今嵌入式Linux的发展概况
毋庸置疑,在嵌入式行业,Linux得到了重大的发展。事实上,你现在阅读这本书就说明Linux已经进入了你的个人生活。很难估计Linux的市场有多大,毕竟很多公司仍然在发展他们的Linux产品。
LinuxDevice.com,是由Rich Lehrbaum创办的,用来发布热门新闻和信息的门户网站(译者注:2013-11-17测试,该网站已无法进入),它每年都会对嵌入式Linux市场进行年度调查。在最新一次的调查中,该网站报道,每年新设计的产品中,Linux已经成为占绝对优势的操作系统。报道显示,接近半数的调查者使用Linux作为他们的嵌入式操作系统,最接近Linux的系统也只占八分之一的市场,曾经主导嵌入式市场的商业操作系统甚至占不到十分之一的份额。即使你能找到原因去质疑这些调查结果,也不能忽视现今嵌入式Linux市场迅猛的增长势头。
- 1.3 开放源代码和GPL
之所以Linux能够被越来越多的采用,一个很重要的原因是因为Linux是开放源代码的。Linux内核基于GNU GPL(General Public License)的许可证发布,GPL赋予Linux以自由(注1)之精神。在GNU GPL条款的第二章指出:“所谓自由软件,是指使用的自由,而非免费”。(译者注:“自由”和“免费”在英语中都可用“free”一词,GPL对二者的区别给予了明确解释,译者从中文的角度直接做了区分)GPL许可证非常简短易读,下面对其重要的特征进行了归纳:
- 注1:大多数专业的开发者认为:“自由”意味着你可以下载Linux内核源码而不需要缴纳任何费用,但是往嵌入式平台开发和部署操作系统则需要缴纳相应的费用,对于收费问题的讨论,请参考1.3.1 “免费”与“自由”
- GPL许可证永久有效。
- GPL许可证准许用户自由地运行程序。
- GPL许可证赋予用户学习和修改软件源代码的权利。
- GPL许可证赋予用户分发软件原始代码或经用户修改过的代码的权限。
- 当用户在GPL许可证下分发自己的软件时,其他用户在使用该软件时拥有上述所有权利。
当一份软件在GPL条款下发布时,必须永久携带该许可证(注2),即使软件源代码已经被深度修改。另外,GPL不仅允许深度修改GPL下的软件源代码,甚至是非常鼓励这种行为,当然,你的修改也必须基于GPL来发布,这样做的目的就是为了保证代码永远都能被任何人访问,哪怕软件版本已经被修改,或是基于该软件有了衍生的新软件,也必须基于GPL发布。
- 注2:理论上讲,如果所有的版权持有人同意,软件可以在一个新的许可证下发布,不过这不太可能发生。
不管通过何种方式获取到GPL软件,GPL许可证都准许用户拥有永久性的分发权利,而不用考虑版税或授权份数限制,不过这并不意味着软件开发商不能对GPL软件收费,事实上对GPL软件收费是一种合理并且很常见的商业行为。GPL仅意味着一旦用户获取到GPL软件,不论该软件是原始版本还是衍生版本,用户都有权利对其进行修改和重新分发。按照GPL许可证的条款定义,如果GPL软件用户对该软件进行了修改并决定重新发布(即发布衍生版),那么他必须在GPL许可证下发布。
如果读者想深入地了解开源运动的历史和文化,请参考本章末尾的参考数目:Eric S. Raymond著的《大教堂与集市》。
- 1.3.1 “免费”与“自由”
但是我们经常听到一种误解,说Linux是“免费”的。诚然,你可以免费地获取到Linux,你可以几分钟之内就下载完一份Linux内核源码。但是很多专业的开发者认为,任何软件在设计伊始就是收费的,这些费用用于提供软件、集成、修改、维护和支持等,除此之外,开发者需要的工具链,库,应用程序和为用户的特定平台专门提供的交叉编译工具等也算在内,所以说,为用户部署嵌入式Linux系统而开发所需的软件组件也是一个不小的工作。
- 1.4 标准及相关团体
- 1.4.1 Linux标准规范
LSB明确提出了Linux发行版的通用属性,包括对象格式,标准库接口,最小命令和实用程序集合及其行为,文件系统部署,系统初始化等等。
读者可以通过本章末尾的 1.5.1 进一步阅读推荐给出的推荐书目来了解更多关于LSB的内容。
- 1.4.2 开源发展实验室
- 1.4.2.1 OSDL:运营商级的Linux
OSDL运营商级Linux工作组为运营商级设备的研发制作了一份规格说明书,该规格中定义了一系列需求,最新版本的规格说明书覆盖了七大功能领域:
- 可用性 需要提供增强的可用性,包括在线维护操作,冗余备份和状态监控
- 集群 需要提供冗余备份服务,比如集群成员管理和数据检查
- 可服务性 需要提供远程服务和维护,例如SNMP和对风扇电源等的诊断监控
- 性能 需要定义性能和粒度,多处理均衡,延迟等
- 标准 需要指定符合运营商Linux规范的标准
- 硬件 需要高可用性的硬件,例如刀片服务器和硬件管理接口
- 安全性 需要提高整个系统的安全性以抵御各种威胁
- 1.4.2.2 OSDL:移动Linux计划
OSDL赞助了一个叫做移动Linux计划的工作组,按照OSDL网站的声明,该计划的目的是在下一代移动手持设备和其他融合了语音和数据的便携式设备中加速Linux的占有率。这个工作组的重点领域包括开发工具,输入输出和网络,内存管理,多媒体,性能,电源管理,安全性和存储。
- 1.4.2.3 服务可用性论坛
- 1.5 本章小结
- 不论是嵌入式设备的开发者还是制造商,使用Linux的比率都在持续增长。
- 嵌入式设备中Linux系统的使用以一种令人兴奋的节奏增长。
- 本章中,我们介绍了驱动Linux系统在嵌入式市场增长的众多因素。
- 本章还介绍了影响嵌入式Linux的标准和相关组织。
- 1.5.1 进一步阅读推荐
《大教堂与集市》 英文书名《The Cathedral and the Bazaar 》Eric S. RaymondO'Reilly Media, Inc., 2001
Linux标准规范计划官网(译者注:该书出版于2006年,现在对应网址已更改,点击链接会自动跳转至 http://www.linuxfoundation.org/collaborate/workgroups/lsb)
开源发展实验室官网(译者注:该书出版于2006年,现在对应网址已更改,点击链接会自动跳转至 http://www.linuxfoundation.org/)