下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑Linux项目如何摆脱作坊式开发?-基础电子Linux是Android的始祖。后者已经风行,但Linux却仍然在潜行。这说明Linux的发掘遇到了严重的瓶颈,而克服这个瓶颈就是一个非常大的挑战。这就是基于Linux的开发项目通常在商业上不够合算,具体地说,就是开发进度、成本以及产品上市之后的维护成本都有很大的不确定性,让商业决策者很难做出清晰度判断,因此很难用于大规模的商业项目。
绝非大家都热衷于"作坊式"的开发,其中的痛苦,凡是用过Linux的嵌入式软件工程师都有切身感受。从一个仅有内核和简单网络功能的操作系统开始,一点一滴地编织出一个可以与特定硬件环境相配合并可投入实际应用的系统,这个过程本身就像是看着别人健步如飞而自己却在爬行。此后,硬件环境哪怕有一丝一毫的改变,就可能导致全面重新修改和测试整个软件系统。而且,这个过程会无休止地循环下去,直至这个产品生命周期的结束。
摆脱Linux开发零打碎敲的束缚
尽管软件开发工程是复杂的管理工程,但所用工具是否具备标准化、高效率、高可靠性,这是其中的关键因素。
在嵌入式环境中建立一个实际可用的Linux系统,必须依赖一些软件和工具集。请设想这样的情形,你从开放源码社区得到内核、用户空间和补丁等等,然后开始做自己的工作(例如建立特定大小的文件系统、内核配置等等),然后应用适当的工具集来建构各种特定的应用软件。而且,你可能不得不针对IA架构做一套系统,再针对ARM架构做一套系统。
实际上,嵌入式软件开发跟烹调做菜十分相似--用相同的食材和工具,只要稍微改变配方比例和火候,就可以做成不同的菜肴。
现在请设想一下,如果没有通用的、好用的工具(例如菜刀、炉灶、锅和炒菜的铲子),做菜所花的时间长短将难以预计,烹调出来的菜肴品质也很难稳定。相反,如果刀具、炉灶和锅都是通用的,甚至是机械化、自动化的,情况就会大大不同。麦当劳、肯德基的厨房就是很好的实例--工具都是标准化的。在嵌入式Linux领域,所遇到的情形就是这样--没有通用的资源,从内核、用户空间到跨架构构建,也没有通用的工具集(工具链、Makefile、编译器、调试器等等)。
反观Android,这是一个相对统一化、一致化的Linux系统。与开发一个Linux系统相比,开发一个Android的系统轻松得多,要担心的事情也少得多,速度也快得多。那么,Linux怎样才能实现类似于Android那样的脱胎换骨?
以标准化的工具提升Linux项目的规模和效率
在2022年,开放源代码运动的精英们意识到,是否具备开发构件和工具的统一化、一致化将会关系到Linux的生命力。于是他们聚集起来,启动了Yocto计划。这项计划的目的就是提供通用的建构系统和具备协同能力的开发,为Linux开发者免除他们浪费在移植、复制、重建和维护这些低价值工作上的时间。这两年来,Yocto计划取得了重要进展,其中具有标志性的一环就是"Yocto计划兼容性需求规范(YoctoProjectComplianceRequirements)"的推出。
Yocto计划是一个开放源码协同计划,它提供必备的标准以及高质量的架构、工具和方法论,可以降低嵌入式Linux软件工程项目的复杂度,提高其可移植性。Yocto计划不是某一家公司或者机构提供的Linux发行版本,而是吸引了许多硬件和软件公司都加入其中,共同来支持嵌入式Linux开发者实现更好的跨平台兼容性和部件互操作性。
更加诱人的是,Yocto不会让用户有厂商锁定的困扰。用户既拥有了高质量的标准化工具,又可以自行管理其风险。对于企业战略来说,拥有自主的技术选择是成功的必要条件。Linux项目中的互操作性、可移植性和可重用性将会让开发团队受益无穷。
以WindRiverLinux5摆脱硬件不确定性的束缚
风河公司(WindRiver)不仅在Yocto计划中投入了大量的时间和精力,并且积极倾听了用户和合作伙伴的声音,在此基础上还推出了新的WindRiverLinux5.
的WindRiverLinux5以Yocto计划开源开发环境为基础,而且也是批能真正达到"Yocto兼容性规范"要求的产品之一。其中不仅蕴含着的开源创意,而且保证了Yocto要求的兼容性和互操作性。
通过融入Yocto计划,风河为开源社区更进一步发展嵌入式Linux系统提供了一个更开放、更灵活的基础。由于WindRiverLinux5具备良好的互操作性,并且确保了与Yocto的兼容性,从而可以消除大量重写代码的痛苦,让嵌入式Linux大幅度降低繁重的手工操作,自动化的程度越来越高。
由于采用基于Yocto的基础架构(如图所示),WindRiverLinux5可与Yocto计划兼容板级支持包(BSP)以及软件或中间件协同工作,从而帮助开发者迅速实施互用性高、不依赖于平台的Linux项目。
图:WindRiverLinux5架构示意图。
回顾Linux和开放源码运动的发展不难看出,Yocto计划赋予开发人员一个极高的起点,帮助他们避免重复工作以及不必要的维护。事实上,Yocto计划是的开源项目之一,以此为基础而开发的通用创建系统,可帮助开发人员避免从零开始,转而把时间和资源集中于开发差异化Linux设备,从而实现投资回报化。
WindRiverLinux5不仅兼容Yocto计划,还提供了商业级L
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海运出口运输合作合同要点
- 代工合作协议模板
- 合资经营协议示范文本
- 定向培育与预就业协议书案例
- 高校毕业生就业协议书写作指南
- 建筑安装工程合同模板
- 中外农产品电商营销合作合同
- 涉外补偿贸易合同书撰写技巧
- 网络证券委托买卖合同解读
- 建筑行业合作协议书格式
- 完整版平安基础性向测试智商测试题及问题详解
- (完整版)基层版创伤中心建设指南(试行)
- 《疾病与人类健康》
- 医务人员医学人文素养培训
- 车辆技术档案范本(一车一档)
- 人工智能智慧树知到答案章节测试2023年复旦大学
- 第五单元《圆》(单元解读)-六年级数学上册人教版
- 初中物理知识点手册大全(挖空+答案)
- JJG 852-2019中子周围剂量当量(率)仪
- GB/T 32131-2015辣根过氧化物酶活性检测方法比色法
- GB/T 28885-2012燃气服务导则
评论
0/150
提交评论