最近有媒體刊登了一些關(guān)于Android 反分裂(Anti-fragmentation)政策的報(bào)道,引發(fā)了大家的廣泛關(guān)注和討論。各種消息、猜測(cè)、誤傳快速蔓延。那么,Google的Android anti-fragmentation計(jì)劃真的會(huì)對(duì)MIPS、Intel、ARM等處理器架構(gòu)供應(yīng)商帶入沖擊嗎?是的話其影響又如何呢?Anti-fragmentation真的只意味著Google將只為特定架構(gòu)進(jìn)行Android標(biāo)準(zhǔn)化工作嗎?我深入?yún)⑴cMIPS的Android計(jì)劃已有一段時(shí)間,以下是我的一些看法,希望能幫助大家了解更多的事實(shí)。
問(wèn):Google只會(huì)針對(duì)ARM架構(gòu)進(jìn)行Android的標(biāo)準(zhǔn)化工作嗎?
答:絕對(duì)不是。許多MIPS客戶都曾向Google詢問(wèn)這個(gè)問(wèn)題,他們?nèi)桓嬷f(shuō),Android是以架構(gòu)中立(architecture neural)概念為基礎(chǔ)的。Google現(xiàn)在做的是啟動(dòng)一項(xiàng)“anti-fragmentation”計(jì)劃,并要求相關(guān)OEM、芯片公司、架構(gòu)公司簽署一份anti-fragmentation協(xié)議,以加入早期獲得Android代碼的計(jì)劃,這是確保一個(gè)平臺(tái)能訪問(wèn)Android Market的一個(gè)過(guò)程。
問(wèn):為什么Google要求相關(guān)方簽署“anti-fragmentation”協(xié)議?
答:這項(xiàng)協(xié)議背后的主要推動(dòng)因素,是因?yàn)橐呀?jīng)看到Android代碼基礎(chǔ)有了“分裂”(fragmentation)的可能傾向。比如有些公司使用自行開發(fā)的應(yīng)用層和程序取代了Android的某些部分;還有些公司和開發(fā)人員在一些第三方公司的鼓動(dòng)下,不恰當(dāng)?shù)厥褂昧艘恍┑讓佑布蛑噶罴匦?。這會(huì)導(dǎo)致目前Android Market上面的應(yīng)用程序可能無(wú)法確保在所有的Android設(shè)備上都能正確運(yùn)行,造成了嚴(yán)重的兼容性問(wèn)題。這次anti-fragmentation協(xié)議的目的就是要解決這個(gè)問(wèn)題。
問(wèn):ARM Android平臺(tái)上有這樣的“分裂”問(wèn)題嗎?
答:事實(shí)上,這在ARM的Android平臺(tái)上一直就是個(gè)嚴(yán)重的問(wèn)題。目前市場(chǎng)上的芯片公司使用多個(gè)不同的ARM架構(gòu)版本。我們?cè)趯?shí)驗(yàn)中也發(fā)現(xiàn),很多Android應(yīng)用程序只能在一個(gè)ARM平臺(tái)上運(yùn)行,而在另外一個(gè)ARM平臺(tái)上則不能運(yùn)行。隨著Android的持續(xù)發(fā)展,Google的anti-fragmentation計(jì)劃必須要解決這種情況。MIPS完全支持Google的anti-fragmentation想法。
問(wèn):最近DIGITIMES上刊登了一篇“Google和ARM據(jù)稱將計(jì)劃建立標(biāo)準(zhǔn)化平臺(tái)”的報(bào)導(dǎo)(http://www.digitimes.com/news/a20110330PD210.html),這則消息是否屬實(shí)?
答:這篇文章中有許多不準(zhǔn)確之處。它猜測(cè)Google將會(huì)以ARM架構(gòu)來(lái)標(biāo)準(zhǔn)化Android,并意指此標(biāo)準(zhǔn)工作“只”針對(duì)ARM——這是錯(cuò)誤的。事實(shí)是,Google顯然已對(duì)Android潛在的“分裂”問(wèn)題越來(lái)越感到擔(dān)憂(有部分原因是因?yàn)樵贏RM平臺(tái)上就存在諸多的不兼容問(wèn)題)。此外,在Google的anti-fragmentation計(jì)劃中,每一個(gè)處理器架構(gòu)公司,包括ARM、MIPS和Intel,都必須簽署該條款,才能在未來(lái)獲得早期Android代碼訪問(wèn)授權(quán)。同時(shí),Google在定義可以在包括ARM、MIPS和Intel等各種處理器架構(gòu)上執(zhí)行的Android接口,以確保應(yīng)用程序兼容性和可移植性。Google還定義了兼容性測(cè)試套件(Compatibility Test Suite, CTS),必須通過(guò)CTS才能獲得訪問(wèn)Android Market許可。這篇報(bào)道暗示了CTS僅支持ARM,但事實(shí)并非如此,CTS獨(dú)立于任何具體架構(gòu)。
問(wèn):MIPS支持Google的anti-fragmentation計(jì)劃嗎?
答:當(dāng)然。我們認(rèn)為這是相當(dāng)有益的做法,同時(shí)這對(duì)為Android市場(chǎng)開發(fā)芯片的MIPS授權(quán)客戶來(lái)說(shuō)也是非常重要的,這使得大家都能擁有獲得應(yīng)用程序的同等機(jī)會(huì)。這是讓終端用戶享受無(wú)縫可移植性體驗(yàn)的唯一方法;并能讓設(shè)計(jì)者根據(jù)性能、功耗、成本等基礎(chǔ)架構(gòu)優(yōu)勢(shì)進(jìn)行設(shè)計(jì)選型。Anti-fragmentation計(jì)劃有助于真正實(shí)現(xiàn)跨平臺(tái)間的可移植性(不管是完全不同的處理器架構(gòu)之間,或相同指令集架構(gòu)下的系列變形)。更進(jìn)一步,需要訪問(wèn)特定硬件功能的程序開發(fā)人員也可以利用Android NDK來(lái)實(shí)現(xiàn)這個(gè)目標(biāo)。每個(gè)Android支持的架構(gòu)都有一套NDK,包括MIPS、Intel和ARM。
問(wèn):MIPS會(huì)與Google就anti-fragmentation展開合作嗎?
答:是的。實(shí)際上,Google已邀請(qǐng)MIPS參與此計(jì)劃。我們目前正與Google討論anti-fragmentation協(xié)議以及Android源代碼早期訪問(wèn)授權(quán)協(xié)議。MIPS也已將NDK/ABI開放給Google,并與Google合作將他們納入Android工具鏈中。