Linaro 的最新情况
By Jake Edge May 25, 2011Updates from Linaro
翻译:李潇
在过去的一个多月左右,我参与了一些有关Linaro及改善ARM Linux状况的相关工作的不同演讲。虽然Linaro是由六个主要的ARM公司合作的,可是它的成果对所有ARM公司,开发者和用户都是可用的。也许会重点关注合作公司的需求,但Linaro的影响和成果会推广到这些需求之外的其他地方。Linaro努力着眼于整个ARM生态系统的兴趣集中点——那样的话你们也许就不会对ARM,Ltd.和大部分ARM硅制造者IBM的参与感到奇怪了。
自从Linaro正式成立已经过去大概十一个月,这个组织已经扩大了它的范围,变成每月发布一个版本,介入并努力帮助阻止ARM树的一场危机。它也在许多自身问题方面取得进步,比如内核、工具链、图形化。但是要做的当然比这些要多。
Linaro 开发者峰会
Linaro CEO George Grey在Linaro开发者峰会的开幕上做了简短的发言,描述了他所预见的Linaro将迎接的工业界趋势和事物。Grey提到过去的十二个月显示了在现实世界产品使用开源软件的一些非常奇怪的变化。“尤其Android令很多人吃惊”,他说。在那段时间,Android的智能手机市场份额从5%上升到25%,这在以前从来没发生过。
设备生产商以前只能拿到过时的BSP(board support package),而且每个BSP都有一套特定的开发工具链。现在,他们在寻找有产品质量保证的开源平台,这正是Linaro所要宣扬的。LAVA(Linaro自动验证架构)——一个测试和验证的平台——将在提高Linaro发布的软件质量过程中起到重要作用。
Grey说到,使开发平台进入到开源代码开发者的手头上是Linaro与众不同的另外一些地方。Grey说,在过去,小角色因为难以引起SoC厂商的注意,所以很难触及到这些开发平台。但现在,Texas Instruments, Freescale, 和 ST-Ericsson(这些都是Linaro成员)都有价格合理的ARM SoCs开发平台,这样的平台也会越来越多。
这解决了硬件问题,并且Linaro将会提供运行在这些ARM板上的软件。这意味着预算紧张的公司或开发者能够获得完整的配有多种I/O设备的硬件和有产品质量保证的软件。Grey激动地憧憬着社区利用这些资源能够做的一切。
Grey同时宣布将不会有Linaro 11.11(以前是在Ubuntu发布之后的一个月发布),而是每个月发布一次(或者更频繁)。Linaro各个工作组将持续的将他们的代码推向上游,同时每天会发布一些代码,这些主要是内部使用。每个月将会有给外部使用的内核和工具链发布
展望未来,Grey提到对Cortex A15处理器的支持工作正在取得进展。其目的是要在发布之日让Linux支持该处理器,而不是像过去那样一两年后才被支持。他同时说到,将会有一个基于ARM的服务器市场,并且Linaro也将在这个市场做一些前期工作。
Linaro工程设计副总裁Kiko Reis在Grey之后做了发言,主要是关于LDS(Linaro Developers Summit)运作的具体细节,还有参与者怎样充分利用它。他回顾了Linaro的第一年,在那一年,尤其是在与各ARM厂商的交流和合作方面,没有取得很多成就。启动Linaro并不容易,他说,还有更艰难的事情要做,包括将整个ARM社区团结在一起。
Reis特别提到了仍然需要去完成的ARM内核合并的工作。Linaro花了一年时间,但并不真正是在做这些,而现在是时候去完成它了。决定嵌入式图形设备内存管理的正确过程同样是要做的事情中优先级比较高的一项。实现它将用掉不止一年的时间,但是如何去计划是这周首先要做的。
Linaro组织Linaro CTO David Rusling 在此前四月份的嵌入式Linux大会上的演讲中回顾了Linaro这个组织,强调了它在开始的十个月里取得的一些成就,并对未来做了一些计划。Rusling在一开始阐明Linaro是一个工程组织,而不是一个夏威夷的茶点房。他同样指出,Linaro是候选名字里面最不让人讨厌的名字,这是基于Dirk Hohndel在早前选择"Yocto"作为项目的名称所做解释的反应。
Rusling说他大约在2009年,当时还在ARM,Ltd.时,认识到ARM跟Linux的命运是缠绕在一起的,但是有很多公司并不合作。在各种SoCs相同的事情上明显需要更多的合作,但致力于解决这些问题的工程师并不多。Linaro由此应运而生。
Linaro开始时大约有20个工程师,它被其他人想象成“高高在上的工程师”组织。聪明的做法是让所做的事情公开化,他说。所有东西都在wiki,虽然一些东西很难找到,“高高在上”是我们的恶咒。
Rusling说,Linaro所做的大部分是“社会化工程”。人们对Linux和开源有很多需要消除的误解,包括认为开源是难以处理的这种想法。虽然在Linux和其他项目上有非常严格的代码管理者,但是有兴趣的组织和厂商参与项目过程非常容易。真正消极的观点是认为开源比较便宜,其实参与开源社区工作需要更深层次的投入,来影响发展的方向。
该组织的六个公司成员想为Linaro推动这个技术日程,而Linaro则通过已确定好的工作组来推动工作进展。这些工作组是非常独立的,这些公司成员不会直接运行项目,而是让这些工作组在上游解决他们存在的问题。
同样也有一个平台集合建立、测试、并给工作组已完成的工作定基准点。这是为了证明新的内核特性能正常工作或者工具的变化能通过创建并测试评估版本工作的更快。他说,任何时候你做的任何改变你都要度量一下那些改变造成的影响。对应每个SoC厂商成员(Samsung, Texas Instruments, ST-Ericsson, and Freescale)都有一个团队负责从平台团队获取输出成果并将其转变成其用户可使用的版本。这些团队是Linaro内的团队,不对社区参与者工作。
不仅仅是内核方面,工具链工作组也会积极把在GCC和其他工具上做出大量工作推向上游。对ARMv7a, Thumb 2, Neon, 和 SMP的支持将被加入到GCC 4.7中,直到2012四月,这个GCC版本才会发布,大约到2012年10月,4.7.1发布之后,才会出现在各操作系统中。在这期间,工具链工作组将会在GCC发布之前让“合并”能被ARM开发者使用。除了GCC方面的工作,工作组也会向gdb,QEMU,和valgrind增加功能。
11月发布第一个版本后,两个新的工作组加了进来,以解决图形和多媒体问题。Rusling说,另外,其他的工作组开始查看长期的问题。内核工作组开始为所有Linaro成员增加设备树支持。对GCC的向量化支持是工作链工作组关注的焦点,电源管理组开始处理分段内存问题,这样能让部分内存掉电休眠。他说,所有这些事情都是有技巧的,并需要ARM领域以及上游社区的协调。
对多媒体问题,许多工作都需要测试,benchmark,并为ARM调整各种各样的编码。OpenMax媒体库的标准化和GStreamer框架是Linaro将要走的方向。他说,Android在多媒体支持上已走出了一条自己的道路。
同Grey一样,Rusling也指出了在LAVA上的工作不仅对Linaro非常重要,对社区也很重要。这是一个能够被ARM社区其他人或者更多人使用并完全开放的测试和验证系统。
Rusling说,在Linaro的第一年有一些惨痛的教训。从各公司那里零星的得到几个工程师,并想组建一个新的工程组织是比较难的。另外一方面,人们认为ARM社区不会合作但Linaro已经证明事实并不是这个样子。所有事花的时间比他想的要长,而且仍然有很多要学习的东西,他说。“开源是极好的”,但如何使用开源是有挑战性的。
很明显,ARM已经成为Linux的一个非常重要的架构,并完全统治者低功耗移动设备市场。这种现状将长期持续, ARM在服务器领域所做的努力也许在接下来的几年会尝到甜头。当然能耗(以及相关的发热)不仅在手持设备方面,在数据中心也很重要。迄今为止,Linaro已经做出了许多正确的举动来确保ARM在linux有良好的技术支持并具有可维护性。
最新评论