Torvalds 由於 x86 的基礎架構和生態系統而對其寵愛有加linux
Linux 領袖 Linus Torvalds 是一個直率的人——他老是表裏如一。比方說最近在 Linux 內核 4.8 的事故中,他沒有文過飾非,而是認可了本身的過失。
編程
不過他在上週的 Linaro Connect 會議上卻是讓人瞠目結舌。當他被問到最喜歡的芯片架構的時候,他不假思索地說 x86,而不是 ARM。服務器
或許是 x86 電腦悠久的歷史讓他得出這個答案。x86 沒有多少碎片化的軟件和硬件,它幾乎僅僅是用來工做的。網絡
Torvalds 說,人們老是癡迷於指令集和 CPU 核心,但事實是圍繞架構的生態系統更爲重要。架構
「重要的是圍繞指令集的全部基礎設施,而 x86 擁有大量的不一樣級別的基礎設施」,Torvalds 說。「它在走一條不同凡響的路。」性能
許多應用都是在英特爾或者 AMD 的 x86 機器上開發的。兼容性對於 x86 芯片和電腦來講是重要的,x86 平臺有統一的硬件、開發模式以及其它的基礎設施。操作系統
而 ARM 則迥然不一樣。從硬件供應商的角度來看,它引領着一個碎片化的市場,Torvalds 說。教程
「x86 的生態系統一貫都秉承着兼容爲先的理念,而 ARM 則不覺得然,」Torvalds 在與 ARM 開發者進行的一場爐邊閒談時如是說。開發
ARM 主導了移動設備的市場,有大量的設備都是使用基於 Linux 內核的安卓操做系統的。可是 ARM 的生態系統太過於碎片化了,這致使了不少支持和設備的問題。部署
問題之一:因爲硬件的配置不一樣,在全部移動設備上部署同一個版本的 Android 是不可能的。硬件製造商會調整 Android 系統以兼容他們設備的芯片組。不像 Windows 更新到 PC,一個 Android 更新沒法推送到全部的移動設備。
英特爾嘗試過將 x86 芯片放在智能手機上,可是如今已經放棄了。英特爾的其中一個目標就是推送能夠在全部 x86 手機上下載並安裝成功的安卓更新。
還有 ARM 服務器軟件的開發問題。每一個芯片組的架構、網絡和 I/O 特性不一樣,必須編寫軟件才能利用這些特性。這大大減慢了服務器中採用 ARM 的速度。x86 不存在適配的問題,它將繼續主導服務器市場。
「我對於 ARM 做爲一個硬件平臺而不是一個指令集感到很是失望,雖然我也有個人問題,」Torvalds 說。「做爲一個硬件平臺,它始終不太好對付。」
Torvalds 小時候在一臺裝配有 8 位的 6502 處理器的微機上編程,他很喜歡這種架構,由於它的指令是流式的,當時尚未其它硬件能夠與之媲美。這種架構爲芯片提供了更高的性能。
「我那時想升級的是一臺 Acorn Archimedes,呃,ARM 就是因該公司而命名的,「Torvalds說,「那曾經是我求之不得的機器。」
Archimedes 是第一臺基於 Acorn 電腦公司的 ARM RISC 芯片的我的電腦。ARM 做爲 Acorn 的一個分支而成立。(LCTT 譯註:ARM 的縮寫來自於 Acorn RISC Machine。——引自維基百科。)
Torvalds 喜歡 Archimedes,由於它搭載了像 6502 同樣的流式指令和 RAM 芯片以得到高性能。不盡人意的是,他找不到那臺電腦。
他嘗試過一臺「古怪的英式電腦」,Sinclair QL,這是一臺比 Acorn Archimedes 還要失敗的機器,Torvalds 說。
「那時的芬蘭不是宇宙的中心,」Torvalds 說。「在那以後我吸收教訓了——再也沒有去買沒有基礎設施(生態)的機器。」
免費提供最新Linux技術教程書籍,爲開源技術愛好者努力作得更多更好:http://www.linuxprobe.com/