北京時間6月23日凌晨,一年一度的蘋果全球開發者大會WWDC如期而至。

在今年的WWDC上,蘋果公司正式官宣:

Mac電腦將在兩年內,完成從Intel(英特爾) X86 CPU(處理器)到蘋果自己研發的ARM CPU(處理器)的遷移,第一批ARM Mac產品會在今年年底上市。

這意味着,蘋果電腦將逐漸與英特爾CPU脫鉤,轉而使用自家研發的CPU。

蘋果公司的CEO蒂姆·庫克說:“Mac向前邁進了一大步,我們正在迎來Mac使用自家芯片的日子,這是Mac歷史性的一天”。

看到這個消息,很多人說蘋果的這個決定很有遠見,很偉大。

但是,作爲在PC行業跌爬滾打十幾年的老IT人,我斗膽不這麼看。

這個決定是很重大。

但也許,這不是面向星辰大海的揚帆之旅,而是被逼到牆邊死角的無奈之舉。

爲什麼這麼說?

這要從CPU的歷史開始講起。

— 1 —

看上去,蘋果只是開始使用自己研發的CPU,而不再使用英特爾的CPU了。

它好像是爲了擺脫對供應商的依賴。

但這背後,其實是兩種不同陣營的CPU架構之爭。

一種架構叫做X86,另一種架構叫做ARM。

什麼意思?

這兩種架構有什麼區別?

簡單來說,X86架構使用複雜指令集。

而ARM架構使用精簡指令集。

什麼是複雜指令集?

什麼又是精簡指令集?

我舉個簡單的例子。

假如我想用CPU計算加法,比如1+1,怎麼辦?

我就要在CPU的芯片上放一個加法器,也就是利用電門的開和關,來實現一個可以計算加法的數字電路。

那我還想計算減法呢?比如5-3?

我就在CPU的芯片上再放一個減法器。

那我還想計算乘法呢?比如2×5?

我就在CPU的芯片上再放一個乘法器。

那我還想計算階乘呢?比如3的階乘1*2*3?

我就在CPU的芯片上再放一個階乘器。

……

只要我想實現一個新指令,我都可以在芯片上放一個專門計算這個指令的電路。

慢慢地,指令越來越多,CPU芯片就越來越複雜。

一個CPU芯片上,可能有成千上萬個實現不同指令的電路。

這就是複雜指令集。

那什麼是精簡指令集?

假如我想用CPU計算加法,我就在CPU芯片上放一個加法器。

現在,我又想計算乘法。

除了再放一個乘法器,其實我還有更簡單的辦法。

就是用加法器算乘法。

2*5,其實就是2+2+2+2+2。我只需要用加法器算5次就可以了。

乘法器,是可以用加法器實現的。只不過,2*5用乘法器一次就能算出來,而加法器需要算5次。

同樣的道理,再複雜的指令,其實都可以用最簡單的指令或者指令組合來實現。

所以,其實我只需要把那些最簡單的指令集合(最小指令集)放在CPU芯片上,理論上,其實就可以實現所有的指令了。

這就是精簡指令集。

實現同樣多的指令,使用複雜指令集的X86架構,有成千上萬個實現不同指令的電路。

但是使用精簡指令集的ARM架構,可能只有幾百個。

這就是它們最大的不同。

使用複雜指令集的X86架構指令多,計算複雜指令可以一步到位,所以計算速度特別快,效率很高。

但是因爲電路非常複雜,所以非常耗電。

而使用精簡指令集的ARM架構指令少,計算複雜指令時需要用到很多次不同的簡單指令,所以計算速度就比X86要慢,效率相對就低。

但是因爲它的電路簡單,所以也很省電。

X86架構的CPU,性能高,但是耗電。ARM架構的CPU,性能低,但是省電。

特點不同,所以它們的應用場景就各不相同。

X86架構的CPU,更適合用在需要更強計算能力的桌面設備上,比如電腦。

所以它養着兩個強大的巨人——微軟的Windows系統,以及蘋果電腦的MAC OS系統。

ARM架構的CPU,更適合用在計算能力不需要那麼強,但是需要更長時間待機的移動設備上,比如手機。

所以它養着靈活輕量的iOS和Android系統。

— 2 —

一個養着桌面設備,一個養着移動設備。

雖然是兩個不同的技術架構,但它們從來都不是井水不犯河水的關係。

因爲架構之上養着操作系統,操作系統之上又養着生態。

在桌面電腦時代,X86架構的CPU統治了整個天下,微軟憑藉基於X86的Windows系統稱王稱霸。

到了移動互聯網的時代,ARM架構的CPU開始揚眉吐氣,基於ARM的IOS和Android系統各分天下。

兩個陣營從不同的方向爬山,都想搶先佔領山頭,幹掉對方,統一整個生態。

▲ 左邊是x86陣營,右邊是ARM陣營

這背後,並不僅僅是技術架構之爭,而是市場之爭。

而這個戰爭,其實10多年前,微軟和蘋果就已經開始了。

微軟是電腦時代的王者,而蘋果是手機時代的王者。

微軟想進軍手機市場,蘋果也想挑戰電腦市場。

怎麼辦呢?

他們不約而同地想到了同一套策略:三屏一體。

三屏,指的是手機屏幕、電腦屏幕、和電視屏幕。

三屏一體,就是讓這三種屏幕,都用同一套系統。

這樣就能統一三者的生態。

手機上的app能同時在電腦、電視上用,電腦、電視上的app也能同時在手機上使用。

但現實的情況是,手機,有手機的操作系統,IOS和Android。

電腦,有電腦的操作系統,windows和MAC OS。

電視,也有電視自己的操作系統。

每種操作系統都有自己的生態。

想要三屏一體,就需要把底層操作系統打通。

那具體怎麼實現?

微軟和蘋果一開始採取了不同的辦法。

2012年,微軟出了一款平板電腦叫做Surface RT。

這款平板電腦使用了基於精簡指令集的芯片。

所以Surface RT,就沒有辦法使用基於X86架構的Windows系統。

怎麼辦?

微軟專門開發了一套基於精簡指令集的Windows系統,取名叫做Windows RT。

Windows RT,雖然看上去和電腦上的Windows系統一模一樣,但是因爲底層架構不同,所有能在Windows系統上運行的軟件,比如QQ,Office,Sql Server等等,都不能運行在Windows RT上。

那怎麼辦呢?

重新再爲Windows RT專門開發一套軟件。

但是這個工作量太巨大。而且當時Windows RT沒有什麼用戶,沒有形成生態,開發者也不願意專門爲Windows RT再開發一套軟件。

不能爲Windows RT專門開發一套軟件,那就只能開發一個編譯器,把原來Windows上的軟件,自動編譯成Windows RT上能用的。

編譯器確實開發出來了,但是編譯出來的軟件,在Windows RT上運行起來實在是太慢了,效率很低。

所以最終,Surface RT宣告失敗。

大家都想實現三屏一體,統一生態。

微軟失敗了。那蘋果呢?

微軟是想把電腦上的Windows,用在移動設備上。

而蘋果相反,它想把移動設備上的IOS,用在電腦上。

所以,蘋果首先做了一個產品:iPad。

可是,隨着手機屏幕越來越大,iPad的生存空間正在被慢慢擠壓。

我都有大屏手機了,爲什麼出門還要再帶一個iPad呢?

於是爲了區別於手機,iPad後來越做越大,蘋果又做了iPad Pro。

iPad Pro加上一個鍵盤和手寫筆,其實感覺就跟一個筆記本電腦差不多了。

蘋果也一直在宣傳,想讓大家用iPad Pro來完成部分生產的工作,比如寫文檔,畫畫等等。

但是,iPad Pro並不能完全代替電腦,成爲辦公工具。

爲什麼?

因爲iPad Pro上面的辦公應用還是很少。

想在arm體系下建立一套像windows那樣的生產工具,太難了。

iPad被手機逼宮,生存空間越來越小,屏幕越做越大。

它就只能去逼宮Mac電腦。

而Mac電腦本來市場就不大,到今天市場佔有率也沒有超過10%。退無可退。

在這樣的局面下,蘋果就被迫面臨着一個選擇:

放棄基於ARM的iPad,還是放棄基於X86的Mac電腦?

蘋果想了想,做了一個決定:

那還是放棄基於X86的Mac電腦吧。

轉而讓Mac電腦使用arm架構的CPU。

統一了CPU架構,就能進一步統一操作系統,以後手機、ipad上的app,都可以在Mac電腦上使用了。

所以我說,蘋果的這次選擇,並不是面向星辰大海的揚帆之旅,而是被逼到牆邊死角的無奈之舉。

— 3 —

回顧歷史,其實,這並不是蘋果電腦第一次使用精簡指令集的CPU。

最早的蘋果電腦,使用的是一種叫做PowerPC的CPU。

PowerPC也跟ARM一樣,都基於精簡指令集。

但是,當時蘋果電腦的操作系統太小衆,使用的人很少。

大家都喜歡使用Windows系統。

而Windows系統只能裝在X86的架構上,PowerPC上裝不了。

雖然很多用戶也很喜歡蘋果電腦,但是因爲裝不了Windows,蘋果電腦的市場份額越來越小。

迫於市場壓力,爲了自救,最終,蘋果電腦還是加入了X86陣營。

後來,大量用戶買了蘋果電腦,但是在上面裝Windows。

蘋果電腦的市場份額纔開始慢慢回升。

他相當於放棄了自尊,但是最終贏得了市場。

時間回到今天,蘋果電腦選擇放棄X86,換回ARM架構。

其實跟微軟在2012年做Surface RT的性質一模一樣。

他們都想在基於精簡指令集的架構上,做電腦系統。

蘋果公司也開發了編譯器,把Mac OS上的軟件,遷移到基於ARM的Mac系統上。

能不能成功,就看蘋果的ARM CPU是不是真的能夠超越X86。

雖然從理論上來說,精簡指令集的性能想要超過複雜指令集,幾乎並不可能。

最後的話

大屏手機逼宮平板設備,平板設備逼宮筆記本電腦。

筆記本電腦退無可退,選擇放棄。

蘋果電腦選擇放棄X86,轉用ARM。

這是在用MAC的死,來換iPad的生。

最後,這個世界上,再無MacBook,只有長得MacBook的iPad。

用“ARM+編譯器”來模擬PC的體驗,是面對未來的縱身一躍。

用戶可能會陪着蘋果跳下去。

但也可能因爲體驗的巨大落差,轉投聯想、Dell陣營。

這一躍,將近10年前,微軟就跳過(Windows RT),差點摔死。

ARM陣營很難接住PC用戶如山的期待。

今天的ARM可以嗎?

雖然ARM進步不小,但我還是很爲蘋果擔憂。

但蘋果的PC,也許已經到了不得不跳的時候。

這把show hand好像有點大。

祝福蘋果吧。

萬一成了呢。

相關文章