為什麼我們還在使用X86 CPU?致敬8086處理器問世40周年
來自專欄 UEFI和BIOS探秘
前幾天(6月8日),是x86架構系列第一款8086處理器問世40周年,下個月,英特爾也將迎來50歲的生日。多少年風雨相伴,基於x86的電腦總是陪伴著我。小時候偷偷潛入母親的實驗室,第一次上手8086電腦,就驚嘆於遊戲的畫面,而立志於寫出自己的遊戲,從而走上程序員的不歸路。大學期間,80386和80486電腦上的仙劍奇俠傳消磨了多少個不眠之夜。我的第一台電腦,奔騰586就是借口學習寫程序,花費近1萬元巨資,購得200MB的硬碟和16MB的海量內存,從此天雷勾動地火,各種遊戲不亦樂乎,耽誤了學業。到如今,雖說當時寫遊戲的志向從未達成,我卻與程序結下了不解之緣,為安身立命之本。回首當年,全拜X86所賜,在它40歲的生日,我要為它獻上自己的祝福。
1978年6月8日,Intel發布第一款16位微處理器:8086(亦稱之為iAPX 86)。隨後於1979年,又推出了Intel 8088,並用在IBM PC的原始設計中(IBM PC XT)而被人知曉。8086是Intel最成功的處理器系列x86架構的開端,這也是Intel始料未及的:
該系列較早期的處理器名稱是以數字來表示80x86。由於以「86」作為結尾,包括Intel 8086、80186、80286、80386以及80486,因此其架構被稱為「x86」。從此傳奇被延續,時至今年,Intel在40周年還推出贈送8086K CPU抽獎活動。我們比較最初的8086和最近的8086K,多少時光盡在其中:
40年了,為什麼我們還在用X86?
8086和8086K,只有k這個字元的差距,卻花了40年的時間。這麼多年過去了,計算機產業飛速發展,為什麼我們還在使用基於複雜指令集的X86呢?
與一般的印象相反,Intel實際上嘗試過多次革自己的命。從iAPX 432, Intel i960, Intel i860到最後基於精簡指令集的安騰處理器(Itanium, IPF),Intel花費了數以十億計的資金用於尋找X86的替代品。安騰處理器甚至和HP合作,賠本好多年,在精簡指令集RISC大熱的時候乘勢而上,在x86當時並不善於的伺服器領域著手,希望闖出一片新的天地。
這些努力無一例外的都失敗了。台式機和筆記本可以說被X86佔據了生態位,其他架構難以發揮外,安騰的失敗令人意外。X86在伺服器領域後來居上,打敗了Intel自己的安騰、IBM、SUN等等,佔據了絕對統治地位。這是為什麼呢?
現在的X86已經遠遠不是原先的X86,就像第一輛大規模量產的汽車Model T和現在的特斯拉,都是汽車,表層有很多不同,但更深層次的改變卻深埋在軀殼之下。從8086的大約20000個晶體管,到現在數十億個晶體管,量變的同時也有著本質的變化。我們現在很難說現在的X86還是不是複製指令集,超長指令集被解析成微碼,而微碼引入了精簡指令集的很多概念和優化,從而RISC和CISC不再是涇渭分明的兩方,而是融合進入了x86的內心。L1、L2、L3甚至L4 cache的引入,各種高速內部外部匯流排的發明,不斷地給x86注入新鮮的動力。是的,x86在生長,在演化,並在演化中煥發出勃勃的生機。
助力X86持續保持成功的另一很重要的因素是兼容性。儘管CPU Die上大約30%的部分都要被用來保持向前兼容,成本巨大,但它的好處卻怎麼強調都不為過,甚至安騰處理器都要發明X86兼容模式。沉重的歷史有時候是負擔,但忽略巨大的慣性則是愚蠢的。x86多年積累的巨大生態系統,讓任何企圖忽略它的人們都付出了慘重的代價,包括Surface RT和X86的主人自己發明的安騰。
結論
沒有人預計到8086會如此改變人們的生活,8086之父Stephen P. Morse,他說新的CPU
Intended to be short-lived and not have any successors.
每一個新東西被創建後就會有了自己生存的邏輯和路徑,就算是它的主人有時候也只能隨波逐流。在未來的近十年中,x86還會陪伴在你我左右。隨著AI對晶元的需求改變,和量子計算的發展,未來的變化值得期待。
歡迎大家關注本專欄和用微信掃描下方二維碼加入微信公眾號"UEFIBlog",在那裡有最新的文章。同時歡迎大家給本專欄和公眾號投稿!
推薦閱讀:
※高通即將退出伺服器晶元供應行列,三星與 arm 痛失大客戶
※免費濾波器插件Border下載
※蘋果A11X仿生處理器曝光:8核 7nm工藝
※Intel 4月消息匯總:10nm推遲至2019,Jim Keller、Chris Hook加入,Z390 & X399晶元組