在LinuxCon 2014上,讓我們可以預見到ARM處理器架構——世界各地小型設備制造商們深愛的ARM處理器架構——將會出現在服務器世界里。但是在ARM服務器能夠量產之前,專門針對數據中心的、標準的硬件平臺是必需的。
所以企業(yè)Linux 巨頭Red Hat 的首席ARM架構師Jon Masters在星期四芝加哥召開的LinuxCon 2014大會上談論了這個話題。
Red Hat和其他組織——最有名的是Linaro集團,Red Hat也是其中的成員之一——多年來一直在努力讓Linux為ARM服務器做好準備,反過來也是一樣。但是Masters認為,要說服硬件廠商,讓他們相信對ARM在移動設備上有用的東西對于數據中心并不適用。
Masters表示,“很多早期的服務器——不僅僅是ARM,還有其他的架構——利用了我稱之為嵌入式的思維方式?!彼硎?,“所以我仍然親切地將它們稱之為‘嵌入式動物園’,它真正地被用于手機和服務器的設計理念之中?!?/P>
這并不是說Masters認為手機廠商制造自己設備的方法有什么不對。他承認,蘋果和大量安卓手機制造商將嵌入式設計理念運用得非常好。
但是這些努力之所以能夠成功,很大程度上是因為智能手機廠商建設了自己的工具包,所以軟件是“焊接”到硬件上,作為一個完全集成的系統(tǒng)。無論他們使用的是現成的ARM系統(tǒng)級芯片組件,還是創(chuàng)建自己的芯片——就像蘋果和三星的做法一樣——他們生產的每一臺設備上的軟件通常都會針對自己特定的硬件做無數的適應性調整。
為數據中心重塑系統(tǒng)級芯片(SoCs)
Masters表示,高集成度、省電的系統(tǒng)級芯片(SoCs)概念對于數據中心來說也可以是一個巨大的福音。但是由于每個芯片制造商都按照完全不同的規(guī)格設計自己的系統(tǒng)級芯片,這是他們在嵌入式市場中的做事方式,但是這種方式對于服務器來說可不是什么好事。
他解釋說,“通用計算平臺和嵌入式系統(tǒng)不同?!彼硎?,“軟件并不是和硬件一起交付的。它們并沒有集成在一起。人們從自己選擇的廠商那里購買硬件,然后他們再另選廠商購買操作系統(tǒng),他們需要這種方式?!?/P>
在這里,我們討論的也并不僅僅是在Linux和其他一些操作系統(tǒng)之中進行選擇。當今的IT管理員們購買服務器的時候,如果他們喜歡,他們就會希望清掉系統(tǒng)自帶的Linux版本,然后換上另外一個。然而針對嵌入式市場設計的ARM SoCs無法提供這種保障。
Masters表示,“例如,這里沒有標準會告訴你,‘系統(tǒng)究竟會如何啟動,你如何才能找到內核’?!彼硎?,“‘Not’在這塊板子上是去那里,在那塊板子上又通向另一個方向,但是有一種方式可以做到這一點。不過在這些嵌入式科技中并沒有這樣的方法。”
Masters也不相信針對嵌入式市場開發(fā)的軟件解決方案——例如Device Tree和U-Boot通用引導程序——能夠適用于服務器。它們根本就無法在硬件之上提供足夠的抽象,讓管理員能夠以可交換的方式對待ARM服務器,這正是管理員們對待現有x86設備的方式。
Masters表示,“我們需要的是標準化的硬件設備。為了引導我們正在使用的系統(tǒng),我們必須有一定程度的標準化,如果連接服務器上的一個串口存在著二十種不同的可能,這就是個問題。”
ARM進階
幸運的是,沒有人比ARM自己對這些問題理解得更深刻了——也沒有一家公司能夠通過ARM兼容處理器進入企業(yè)數據中心市場獲得更多的既得利益。
英國半導體設計企業(yè)Cambridge第一次大舉進攻服務器市場是在2011年推出了64位的ARMv8-A架構。雖然一些硬件制造商很早就看到了數據中心的機會,并且嘗試推出32位的ARM服務器——特別是現在已經解散了的Calxeda——但是那些設計從來都沒有取得多少效果,而Masters在LinuxCon大會上說的很清楚,Red Hat至少“沒有在32位ARM領域做什么嘗試,而且到現在為止也不認為有什么必要這樣做?!?/P>
最近,為了滿足系統(tǒng)集成商在使用ARMv8-A方面的需求,ARM開發(fā)了兩個新的平臺標準,這一工作得到了Linaro的配合,Linaro是一家主流的Linux廠商,也是硬件合作伙伴。
第一個標準是SBSA(Server Base System Architecture),它描述了ARM系統(tǒng)啟動所需要的最小硬件設備。SBSA規(guī)范最初是于一月份在Open Compute Project峰會上發(fā)布的,其后迅速得到了全行業(yè)的支持。
第二個也是更新的一個標準——是于本周二首次發(fā)布的,就在LinuxCon大會之前——是SBBR(Server Base Boot Requirements),這個標準描述了一個ARM服務器系統(tǒng)應該如何啟動。