蘋果Bitcode將能夠預(yù)測(cè)公司未來CPU計(jì)劃
蘋果的 WWDC 主題演講大會(huì)顯然把所有人的注意力都吸引了過去,隨后幾天的技術(shù)研討會(huì)并沒有受到太多人的關(guān)注,而這并不能表明這些技術(shù)研討會(huì)上就沒有值得我們注意的東西了。在一場名為 Platforms Sate of the Union 的研討會(huì)上,Andreas Wendker 就提到了 Bitcode。Bitcode 支持將未來編譯器優(yōu)化使用到已經(jīng)提交的應(yīng)用上。而且它還將支持應(yīng)用商店增加支持新的 CPU 架構(gòu)。更具體地說是在一款應(yīng)用已經(jīng)提交到應(yīng)用商店中之后。
本文引用地址:http://cafeforensic.com/article/275901.htm
在這種情況下,即使蘋果使用了新的硬件,開發(fā)者也不需要再次提交應(yīng)用。Bitcode是LLVM編譯器中間代碼的編碼。LLVM的前端可以理解編程語言,這些程序用于編寫應(yīng)用。在后端LLVM能夠理解如何展示用戶所下載的應(yīng)用的可執(zhí)行版本。Bitcode就介于這兩步之間。
LLVM 將一款應(yīng)用的源代碼轉(zhuǎn)變成Bitcode,然后再將Bitvode轉(zhuǎn)換成可執(zhí)行應(yīng)用。這樣的設(shè)計(jì)讓它可以輕易增加支持新語言(前端)以及新的CPU(后端)。雖然Bitcode不能在任何平臺(tái)上運(yùn)行,但是它可以轉(zhuǎn)化成任何被支持的 CPU 架構(gòu),包括在應(yīng)用提交到應(yīng)用商店之前還沒有推出的架構(gòu)。
未來開發(fā)者提交的所有Watch應(yīng)用都必須包含 Bitcode,對(duì)于 iOS 9 應(yīng)用蘋果公司并沒有這樣的強(qiáng)制要求。不過 iOS 9 應(yīng)用提交將會(huì)默認(rèn)為 Bitcode。蘋果沒有針對(duì)OS X平臺(tái)進(jìn)行特別說明。
蘋果 Bitcode 將能夠讓我們對(duì)未來蘋果 CPU 的選擇有更好的了解,證明未來在產(chǎn)品的開發(fā)上蘋果會(huì)堅(jiān)持自主開發(fā)的芯片組,包括 Apple Watch 中使用的芯片。雖然目前 Apple Watch 中使用的S1芯片可能不是最好的 CPU,但是已經(jīng)足夠在目前的 Apple Watch 上使用了。自然蘋果是會(huì)推出 S1 的升級(jí)產(chǎn)品,但是即使新的平臺(tái)出現(xiàn),目前Watch已經(jīng)支持的應(yīng)用也不會(huì)受到影響,開發(fā)者不需要就蘋果的新硬件重新提交應(yīng)用。
因?yàn)?Bitcode 蘋果可以選擇他們想要使用的架構(gòu),不管是 ARM 或者其他架構(gòu)。如果我們看得更遠(yuǎn)一些,未來即使S3 CPU變得“更加瘋狂”,蘋果編譯工程需要做的就是在 App Store 中安裝新的 LLVM 后端,剩下的就讓 Bitcode 來解決。
喜上加喜的是,iOS 也會(huì)獲得支持,這就意味著對(duì)開發(fā)者來說 iPhone CPU 和應(yīng)用的未來變得更加光明,未來即使蘋果發(fā)布新的硬件產(chǎn)品,他們需要針對(duì)新設(shè)備做的工作變得更好。不過暫時(shí)開發(fā)者還沒法體會(huì)這些重大變化,至少對(duì)于有望在今年秋季發(fā)布的 A9 芯片,甚至明年的 A10 來說都是如此。而在 A11 上這種變化帶來的影響將會(huì)突顯出來。
評(píng)論