明年出ARM版MacBook?蘋(píng)果還面臨這些問(wèn)題?
6 月 23 日,蘋(píng)果即將召開(kāi)第一次線上開(kāi)發(fā)者大會(huì)活動(dòng)——WWDC 2020。按照慣例,這是一個(gè)屬于開(kāi)發(fā)者的饕餮盛宴,人人都在期待新的 iOS 14,期待新的 macOS、iPadOS、watchOS、tvOS 等等。 但今年的 WWDC 上可能會(huì)有一些對(duì)硬件事關(guān)重大的變化措施。
就在最近,傳出了蘋(píng)果要轉(zhuǎn)換平臺(tái)的消息。準(zhǔn)確點(diǎn)說(shuō),是蘋(píng)果準(zhǔn)備推出 ARM 版本的 MacBook 產(chǎn)品,而最近幾年和在售的筆記本與桌面產(chǎn)品,蘋(píng)果一直使用的是英特爾平臺(tái)。
其實(shí)平臺(tái)轉(zhuǎn)換這事蘋(píng)果并不是第一次干,早在十五年前蘋(píng)果就經(jīng)歷過(guò)一次從 IBM 的 PowerPC 平臺(tái)轉(zhuǎn)換到英特爾平臺(tái)。但今天和 2005 年不一樣,當(dāng)年蘋(píng)果的平臺(tái)轉(zhuǎn)換需求是十分迫切的,因?yàn)?IBM 本身設(shè)計(jì)能力跟不上,PowerPC G5 的功耗和發(fā)熱都很高,根本不適合筆記本電腦這樣的移動(dòng)平臺(tái)。
根據(jù)知乎用戶@蓬岸 Dr.Quest 在相關(guān)問(wèn)題下的答案,我引用了一部分蘋(píng)果從 PowerPC 轉(zhuǎn)向英特爾幾個(gè)比較重要的時(shí)間節(jié)點(diǎn):
2005 年 7 月 6 日,蘋(píng)果宣布進(jìn)行平臺(tái)轉(zhuǎn)換,并向部分開(kāi)發(fā)者提供開(kāi)發(fā)者轉(zhuǎn)換工具(Developer Transition Kit),同期發(fā)布的 Xcode 2.1 支持生成通用二進(jìn)制(universal binaries)格式的應(yīng)用程序。
2006 年 1 月,蘋(píng)果發(fā)布 15 寸 Macbook Pro 和英特爾處理器的 iMac。
2006 年 8 月,蘋(píng)果發(fā)布英特爾處理器 Xserve,完成產(chǎn)品線的轉(zhuǎn)換。QuarkXPress 7.0 以通用二進(jìn)制形式發(fā)布。
2007 年 10 月,Mac OS X 10.5 發(fā)布。這是最后一代可以安裝在 PowerPC 處理器上的 Mac OS X。同期發(fā)布的 Xcode 3.0 增強(qiáng)了對(duì) 64 位處理器的支持
2009 年 8 月,Mac OS X 10.6 發(fā)布。10.6 以及更新版本的 Mac OS X 無(wú)法安裝在 PowerPC 處理器的蘋(píng)果電腦上,但仍然提供 Rosetta 轉(zhuǎn)譯器使用戶可以繼續(xù)使用為 PowerPC 處理器編譯的軟件。
2011 年 3 月,Xcode 4.0 放棄了對(duì) PowerPC 處理器的支持。
2013 年 8 月,蘋(píng)果結(jié)束對(duì) PowerMac G5 的支持。
蘋(píng)果當(dāng)時(shí)能夠轉(zhuǎn)換成功有很多現(xiàn)實(shí)原因,比如當(dāng)時(shí)體量比現(xiàn)在更加小眾,英特爾在移動(dòng)處理器方面足夠強(qiáng)勢(shì)等等。而如今 iPhone 的爆紅和蘋(píng)果生態(tài)粘性的逐漸加大,在 Mac 平臺(tái)上促生了大量的 iOS 開(kāi)發(fā)者。
移動(dòng)平臺(tái)的壯大成熟,也反哺了桌面平臺(tái),現(xiàn)在很多開(kāi)發(fā)者都是先從 iOS 起步,之后再轉(zhuǎn)向 OS X(macOS)開(kāi)發(fā),從軟件生態(tài)上就能看出來(lái),先有的 iOS 版之后才有的 Mac 版的情況并不少見(jiàn)。
而在 iOS 時(shí)代之前,Mac 的生態(tài)其實(shí)處于比較小眾的狀態(tài),甚至說(shuō)難聽(tīng)點(diǎn)就是蠻荒時(shí)代,和今天完全無(wú)法相提并論,自然也是沒(méi)有歷史包袱。
根據(jù) IDC 的統(tǒng)計(jì),2005 年蘋(píng)果電腦的出貨量為 217 萬(wàn)臺(tái),而在 2019 年這個(gè)數(shù)字達(dá)到了 1768 萬(wàn)臺(tái)。這其中固然有筆記本電腦市場(chǎng)整個(gè)市場(chǎng)的擴(kuò)大,但 Mac 的市份額仍然提升到了之前的兩倍。
而從絕對(duì)數(shù)量上說(shuō),如今使用 Mac 電腦的人數(shù),可能是十幾年前的十倍。今天蘋(píng)果是這個(gè)世界市值最高的公司,要撬動(dòng)這個(gè)龐然大物的生態(tài),即便是蘋(píng)果自己來(lái)做也著實(shí)不容易。
從英特爾切換到 ARM,所面臨的最大問(wèn)題可能是整個(gè)軟件生態(tài)的顛覆。
如果把這些眼花繚亂的軟件追根溯源,我們可以回到處理器和軟件運(yùn)行最原始的一種關(guān)系——指令集。
簡(jiǎn)單說(shuō),指令集就是處理器運(yùn)行的‘指導(dǎo)思想’,是一套讓處理器能理解程序的行為規(guī)范。如果‘指導(dǎo)思想’不同,那肯定就沒(méi)有互相理解的基礎(chǔ),而基于這一整套架構(gòu)開(kāi)發(fā)出來(lái)的下游軟件就像由此衍生的各國(guó)文化,但亞洲不懂非洲的文化,非洲也不懂南美的文化。
如今的 macOS 其軟件生態(tài)構(gòu)建在多年來(lái)使用的英特爾處理器上,而英特爾使用的是 X86 架構(gòu),現(xiàn)在整個(gè) macOS 軟件生態(tài)都遷移到了 64 位,也可以說(shuō)是 X86-64 或者 X64 架構(gòu)。
像 iPhone 等移動(dòng)產(chǎn)品使用的芯片則用的是 ARM 的 ARMv8 指令集,你別看現(xiàn)在蘋(píng)果已經(jīng)使用自研的架構(gòu)多年,但在指令集部分依然是基于 ARMv8 的,不過(guò)傳聞?wù)f蘋(píng)果也準(zhǔn)備對(duì)指令集這部分動(dòng)手了。
也就是說(shuō),桌面設(shè)備和移動(dòng)設(shè)備在指令集的層面就是不一樣的,所以換到 ARM 平臺(tái)后,軟件是并不能通用的。
面對(duì) AMD 的窮追猛趕,英特爾確實(shí)在制程上遇到了一些困難,導(dǎo)致新的工藝節(jié)點(diǎn)一直在延后,但在這幾年中并非只是放羊摸魚(yú)而沒(méi)有技術(shù)積累,新品 Tiger Lake(Willow Cove 架構(gòu))性能提升明顯,終于牙膏管擠出了一截。
而從英特爾轉(zhuǎn)向 ARM 也非朝夕之功,顯然還有好幾年的路要走,甚至可能要付出移山挖河般的時(shí)間和財(cái)力才能逐漸追上,而那個(gè)時(shí)候,可能已經(jīng)是 2025 年甚至更久之后了。