中心议题:
* 拨开迷雾、澄清事实:Android 反分裂策略对处理器架构的影响
最近有媒体刊登了一些关于Android 反分裂(Anti-fragmentation)政策的报道,引发了大家的广泛关注和讨论。各种消息、猜测、误传快速蔓延。那么,Google的Android anti-fragmentation计划真的会对MIPS、Intel、ARM等处理器架构供应商带入冲击吗?是的话其影响又如何呢?Anti-fragmentation真的只意味着Google将只为特定架构进行Android标准化工作吗?我深入参与MIPS的Android计划已有一段时间,以下是我的一些看法,希望能帮助大家了解更多的事实。
问:Google只会针对ARM架构进行Android的标准化工作吗?
答:绝对不是。许多MIPS客户都曾向Google询问这个问题,他们全被告知说,Android是以架构中立(architecture neural)概念为基础的。Google现在做的是启动一项“anti-fragmentation”计划,并要求相关OEM、芯片公司、架构公司签署一份anti-fragmentation协议,以加入早期获得Android代码的计划,这是确保一个平台能访问Android Market的一个过程。
问:为什么Google要求相关方签署“anti-fragmentation”协议?
答:这项协议背后的主要推动因素,是因为已经看到Android代码基础有了“分裂”(fragmentation)的可能倾向。比如有些公司使用自行开发的应用层和程序取代了Android的某些部分;还有些公司和开发人员在一些第三方公司的鼓动下,不恰当地使用了一些底层硬件或指令集特性。这会导致目前Android Market上面的应用程序可能无法确保在所有的Android设备上都能正确运行,造成了严重的兼容性问题。这次anti-fragmentation协议的目的就是要解决这个问题。
问:ARM Android平台上有这样的“分裂”问题吗?
答:事实上,这在ARM的Android平台上一直就是个严重的问题。目前市场上的芯片公司使用多个不同的ARM架构版本。我们在实验中也发现,很多Android应用程序只能在一个ARM平台上运行,而在另外一个ARM平台上则不能运行。随着Android的持续发展,Google的anti-fragmentation计划必须要解决这种情况。MIPS完全支持Google的anti-fragmentation想法。
问:最近DIGITIMES上刊登了一篇“Google和ARM据称将计划建立标准化平台”的报导,这则消息是否属实?
答:这篇文章中有许多不准确之处。它猜测Google将会以ARM架构来标准化Android,并意指此标准工作“只”针对ARM——这是错误的。事实是,Google显然已对Android潜在的“分裂”问题越来越感到担忧(有部分原因是因为在ARM平台上就存在诸多的不兼容问题)。此外,在Google的anti-fragmentation计划中,每一个处理器架构公司,包括ARM、MIPS和Intel,都必须签署该条款,才能在未来获得早期Android代码访问授权。同时,Google在定义可以在包括ARM、MIPS和Intel等各种处理器架构上执行的Android接口,以确保应用程序兼容性和可移植性。Google还定义了兼容性测试套件(Compatibility Test Suite, CTS),必须通过CTS才能获得访问Android Market许可。这篇报道暗示了CTS仅支持ARM,但事实并非如此,CTS独立于任何具体架构。
问:MIPS支持Google的anti-fragmentation计划吗?
答:当然。我们认为这是相当有益的做法,同时这对为Android市场开发芯片的MIPS授权客户来说也是非常重要的,这使得大家都能拥有获得应用程序的同等机会。这是让终端用户享受无缝可移植性体验的唯一方法;并能让设计者根据性能、功耗、成本等基础架构优势进行设计选型。Anti-fragmentation计划有助于真正实现跨平台间的可移植性(不管是完全不同的处理器架构之间,或相同指令集架构下的系列变形)。更进一步,需要访问特定硬件功能的程序开发人员也可以利用Android NDK来实现这个目标。每个Android支持的架构都有一套NDK,包括MIPS、Intel和ARM。
问:MIPS会与Google就anti-fragmentation展开合作吗?
答:是的。实际上,Google已邀请MIPS参与此计划。我们目前正与Google讨论anti-fragmentation协议以及Android源代码早期访问授权协议。MIPS也已将NDK/ABI开放给Google,并与Google合作将他们纳入Android工具链中。