你的電腦會越來越流暢!因?yàn)?Intel終于想通了
用過電腦的應(yīng)該都知道,Windows 的兼容性好到讓人幾乎找不到不兼容的軟件。
甚至于最新的 Windows 11 系統(tǒng),依然能無壓力運(yùn)行 27 年前的 Office 95。
這種極端的兼容性一方面有微軟的功勞,另一方面, Intel 的 x86 處理器架構(gòu)實(shí)在是……
太穩(wěn)定了!
即使是今年最新的 Intel i3、i5、i7,他們?nèi)匀桓叨燃嫒?nbsp;1987 年的 x86 開山之作 —— 8086 處理器的指令集。
雖然后面為了新的硬件特性增加了不少新的指令集,但老的指令集也堅決不刪。突出的就是個一脈相承,同宗同源。
但是看樣子, Intel 在堅持了快半個世紀(jì)之后,終于決定給它來一刀了。
大概是果子的 ARM 處理器給了 Intel 太大的震撼,前些日子 Intel 發(fā)布了一份《構(gòu)想簡化的 Intel 架構(gòu)》白皮書。
其中正式宣布了 Intel 未來處理器的新架構(gòu) —— x86S。
和名字暗示的一樣,這個新架構(gòu)依舊和現(xiàn)有的 x86 同源。
但是, Intel 砍掉了一大堆舊特性,把它給精簡(Simplify)了。
最核心的一點(diǎn),就是只保留了 64 位模式,徹底砍掉了 16 位和 32 位模式的支持。
要知道,64 位處理器如果想要原生支持舊時代的 32 位程序,代價還是相當(dāng)大的。
比如說在驍龍 8Gen2 里,需要兼容 32 位的 A710 核心,能耗上比沒有兼容性包袱的 A715 核心差了 20%。
而現(xiàn)在, Intel 也像蘋果、高通一樣,為了產(chǎn)品性能,全面擁抱 64 位設(shè)計了。
OK,照理來說,這篇稿子說到這兒就該結(jié)束了。
結(jié)果我在看 Intel 這個白皮書的時候,發(fā)現(xiàn)里面提到:“簡化架構(gòu)依舊可以通過 64 位模式提供 32 位程序支持。”
換句話說,我們現(xiàn)在電腦上那堆 破爛 好用的小工具、QQ、百度網(wǎng)盤,以及各種網(wǎng)絡(luò)游戲。
這些處于 “32 位重災(zāi)區(qū)” 的程序,就算一輩子不改用 64 位代碼,也能在 Intel 之后的 x86S 架構(gòu)上直接運(yùn)行。
而不是像手機(jī)上那樣,被蘋果和谷歌推著全面轉(zhuǎn)向 64 位開發(fā)。
我擦, Intel 這是開發(fā)了什么劃時代的魔法???
為了搞明白 Intel 到底是做了什么,才做到了蘋果都做不到的事,我好好去找了找資料。
然后發(fā)現(xiàn)了一個事:
Intel 移除 32 位模式,確實(shí)不等于移除 32 位程序支持。甚至移除了 32 位模式,還能讓 32 位程序的運(yùn)行速度變快。
話說到這塊兒,我們就得聊一聊 Intel 現(xiàn)在是怎么設(shè)計處理器的了。
首先,一塊最新的 Intel i9 處理器,運(yùn)行效率可以媲美蘋果 M1 處理器。
但是大家猜猜,它在運(yùn)行一個最新開發(fā)的 64 位程序時,第一步執(zhí)行的操作是什么?
是把自己模擬成一顆 1978 年的 8086 處理器,然后以 16 位模式開始運(yùn)行程序代碼。
別問,問就是 “兼容性考慮” 的一部分。
但是,模擬出來的 16 位模式是肯定執(zhí)行不了 64 位程序。
所以處理器會退出 16 位模擬 —— 再切換進(jìn) 32 位模擬。
32 位模擬自然也是跑不了的,這時候處理器才會最終回到 64 位工作模式,再次開始執(zhí)行。
OK,這次程序終于跑起來了。
是不是很抽象。所以為什么,處理器里會有這么抽象的一個 “逐級切換” 的過程呢?
因?yàn)?1985 年, Intel 設(shè)計首顆 32 位架構(gòu)處理器 80386 的時候,就是這么定義 “兼容的運(yùn)行規(guī)范” 的。別問,問就是 “兼容性考慮” 的一部分。
雖然以如今處理器的性能來說,“逐級模擬” 的性能損耗也不是那么大。
但由于操作系統(tǒng)的調(diào)度方式,它每秒都要發(fā)生幾十上百次!積少成多,這得多浪費(fèi)啊。
就這樣 Intel 還能把 i9 的運(yùn)行效率做到蘋果 M1 的水平,對不起英子,以前是我誤會你了。我向你道歉?。?!
咳咳,好了我們言歸正傳:這次的 x86S 最重要的一點(diǎn)變化,就是砍掉了這個 “逐級模擬” 模式,起手直接進(jìn)入 64 位模式干活。這不簡單多了!
而且沒有了 16 位和 32 位模擬,不僅是代碼執(zhí)行流程得到了精簡,處理器設(shè)計也能得到簡化。
要知道,這些功能實(shí)現(xiàn)的根本,是光刻機(jī)在芯片上刻出來了相應(yīng)的電路。
把這些爺爺輩電路砍掉之后,騰出來的地方自然可以給更新、更寶貴的功能模塊使用。
OK, Intel 做了什么我們搞明白了,可是另一個問題還是沒解決:為什么處理器里都沒有 32 位模式了,未來的 x86S 也還是能無傷運(yùn)行 32 位程序?
這件事,功勞其實(shí)在微軟。
早在 WinXP 64 位版發(fā)布的時候,微軟的程序員們就在系統(tǒng)里內(nèi)置好了 “32 位 Windows 子系統(tǒng)”,能夠以近乎無損且無感的方式轉(zhuǎn)譯 32 位程序到 64 位系統(tǒng)中執(zhí)行。
換句話說,現(xiàn)在我們電腦里的 32 位程序,其實(shí)也沒用到處理器的 32 位模式。
它們一直都是被 Windows 系統(tǒng)自己轉(zhuǎn)譯執(zhí)行的。
emmmm,顯得 Intel 之前的兼容操作更蠢了。
假如你是個一直使用最新 Windows 系統(tǒng)的普通用戶,那么 Intel 接下來要推廣的 x86S 對你是百利無一害的。等新的 x86S 處理器發(fā)布之后,沖就完事了 。
現(xiàn)在大家應(yīng)該能看出來,作為一個沿用了小半個世紀(jì)的架構(gòu),每一顆 Intel x86 處理器都是一個小小的 “屎山堆”。
上面提到的 16-32-64 的兼容模式,是對處理器性能比較有影響的一個設(shè)計,但它其實(shí)還只是 x86 這坨屎山的一個側(cè)面。
事實(shí)上, Intel 這次為了列舉 x86 里有多少 “ 過時特性 ”,花掉了十多頁 pdf。
x86S 將刪除和修改的特性列表:
所以為什么 Intel 憋到現(xiàn)在才開始決定對 x86 架構(gòu)動刀子,以前沒有人站出來過嗎?
其實(shí)是有過的,早在 1994 年的時候,32 位的 x86 處理器就已經(jīng)暴露出問題了。
最主要的隱患是,它的內(nèi)存尋址最大只支持到 4GB,再大就不支持了。
這對當(dāng)時的個人電腦來說問題不大,但是對于企業(yè)和網(wǎng)站的服務(wù)器來說,這相當(dāng)于把性能上限給鎖死了。
那一次, Intel 給出的答案是推出全新的“安騰”架構(gòu) —— 不僅支持超大的內(nèi)存,而且設(shè)計比 x86 架構(gòu)精巧的多。
雄心勃勃的 Intel 想讓大家通過“安騰”處理器重新認(rèn)識電腦。
安騰電腦的貼紙:
結(jié)果因?yàn)橥耆患嫒菀郧暗?x86 程序,任何一個程序要想運(yùn)行在安騰處理器上,都要重寫。
而且據(jù)開發(fā)過安騰程序的小伙伴說,開發(fā)安騰架構(gòu)的程序,要比開發(fā) x86 架構(gòu)的程序復(fù)雜的多。
于是全世界的程序員們一起,給 Intel 結(jié)結(jié)實(shí)實(shí)上了一課 —— 壓根沒人想給他搞開發(fā)。
估計就是因?yàn)檫@次險些把公司玩死的經(jīng)歷,才讓 Intel 把保證兼容這件事給寫進(jìn)了祖訓(xùn)里。
但是現(xiàn)在,時代又不一樣了。
最近兩年,蘋果靠著 M 系列芯片瘋狂吃走市場,傳統(tǒng) x86 電腦的市占率如山體滑坡。
在服務(wù)器上,同樣是 x86 節(jié)節(jié)敗退,ARM 步步緊逼。
假如大家看過行業(yè)新聞會發(fā)現(xiàn),現(xiàn)在華為、阿里發(fā)布的新款服務(wù)器,幾乎都是一水的 ARM 處理器。
兼容性固然可以換來 x86 程序員們的肯定,但假如整個 x86 市場都要被干穿了,兼容不兼容的,還是先放一邊兒吧。
現(xiàn)在的市場風(fēng)向,已經(jīng)足夠激起 Intel 的危機(jī)感了。而 x86S,就是 Intel 應(yīng)對這次危機(jī)的答卷。
并且與上一次大刀闊斧,“重新做人”的安騰相比,x86S 這次的調(diào)整就像一場精妙的手術(shù)。
對普通用戶來說,原有的軟件都能正常使用,就和蘋果從 Intel 轉(zhuǎn)向 ARM 時一樣 —— 那處理器的變化和我們有什么關(guān)系呢?
我對 x86S 能產(chǎn)生怎樣的效果,還是比較樂觀的。
畢竟前兩年就有一個現(xiàn)成的例子:高通和聯(lián)發(fā)科放棄 32 位支持之后,安卓手機(jī)芯片的性能瞬間飆升了一截,首次和早早放棄 32 位的蘋果 A 系列芯片站到了同一水平線上。
同樣的,對于 x86 這位拖著半個世紀(jì)包袱的老將,放下過去的重?fù)?dān),想來只會讓它跑的更快。