不朽傳奇-云計算技術背后的那些天才程序員:Qemu的作者法布里斯貝拉

>>>  技術話題—商業文明的嶄新時代  >>> 簡體     傳統

作者:劉國輝   轉載請注明出處

眾所周知,虛擬化技術是構建云基礎架構不可或缺的關鍵技術之一,而在眾多虛擬化技術實現當中,KVM(Kernel Virtual Machine)因為Linux內核對其的良好支持(KVM于2006年10月被合并入Linux Kernel 2.6.20中),以及其精簡的架構(在最新的Linux Kernel 3.14.rc5 中除硬件之外的核心框架仍然只有不到10000行)越來越多的被應用于超大規模的IaaS部署中,注:隨后會寫文章專門介紹KVM背后的那些技術天才。

但是我們知道運行于內核態的KVM是無法單獨工作的,那些對性能要求比較高的虛擬設備例如:虛擬中斷控制器和虛擬時鐘,才會由KVM內核模塊直接管理,大部分的輸入輸出虛擬設備還是需要一個運行于用戶態的程序負責,這個運行于用戶態的程序就是大名鼎鼎的QEMU(Quick Emulator),它的作者就是法國天才程序員Fabrice Bellard。

在過去的大半個世紀中,計算機科學界涌現出了一批不世出的天才:阿蘭·圖靈(Alan Turing)、高納德(Donald Knuth)、艾茲赫爾·戴克斯特拉(Edsger Dijkstra),這些振聾發聵的名字背后是建立了徹底改變人類生活的現代計算機工業,這些人的影響力是如此之大,不但改變了整個世界,同時也贏得了全球的尊重。于此同時另外一些人也在進行類似令人印象深刻和同時極具影響力的工作,他們之中的佼佼者就是Fabrice Bellard ,Fabrice Bellard 走的是完全不同的路,Bellard的絕大多數貢獻都集中在自由軟件與開源領域,除了QEMU之外,最為人熟知的就是FFMPEG,他被譽為過去20年中最閃亮和最有影響力的程序員之一,但他的名聲遠遠卻低于他的貢獻。

在 2005年,Bellard 發布了也可以說是他最重要的項目:QEMU。QEMU 是一個處理器仿真,意味著用軟件來模擬不同處理器體系架構(ISAs),允許為一個特定處理器編譯的程序,通過軟件仿真在另外一個體系上運行。Rellard 的設計靈感是基于邱奇-圖靈理論,這個理論間接指出任何圖靈完備語言配合圖靈機可以仿真其它的圖靈機。如果說FFMPEG體現了Bellard深厚的數學和信號學天分,那么QEMU 的實現就體現了Bellard對于計算機體系架構的深刻理解和程序設計的深厚功底。

Bellard除了具備天才程序員的實力之外,同時也極具黑客氣質,在他主頁上羅列的眾多令人震撼的成就的最新一個是利用軟件在PC上模擬了LTE 4G基站。天才的創新經常是離經叛道式的超越,Fabriced Bellard的一些項目讓人感覺瘋狂。比如他曾有一個項目是將帶有VGA顯卡的PC改裝成DVB-T的信號發射器。這樣一來,為了防止泄密,公司不僅要封聲卡插口,還要焊上顯卡插口。

2011年,他用JavaScript寫了一個PC虛擬機Jslinux。這個虛擬機仿真了一個32位的x86兼容處理器,一個8259可編程中斷控制器,一個8254可編程中斷計時器,和一個16450 UART。 http://bellard.org/jslinux/,在筆者的普通桌面電腦的Chrome瀏覽器中,Jslinux只用了僅僅5.075秒就啟動了Linux。
屏幕快照 2014-03-11 下午11.51.46
Fabrice Bellard在數學方面也有著驚人的造詣,1997年FabriceBellard提出最快圓周率算法公式。在計算圓周率的過程中,Fabrice Bellard使用改良后的查德諾夫斯基方程算法來進行圓周率的計算,并使用貝利-波溫-勞夫算法來驗證計算的結果。為了表彰他對圓周率算法所作出的杰出貢獻,Fabrice Bellard所使用的改良型算法被命名為Fabrice Bellard算法,這種算法是目前所有圓周率算法中最快的一種,這個計算N位PI的公式比傳統的BBQ算法要快47%。

2009年的最后一天,Fabr ice Bellard宣布另一項重大突破:他用桌面電腦打破了由超級計算機保持的圓周率運算記錄。這是一個壯舉, 他將PI計算到了小數點后2.7萬億位!更令人驚訝的是, 他使用的不過是價格不到2000歐元的個人PC,僅用了116天,就計算出了PI的小數點后第2.7萬億位,超過了由目前排名世界第47位的T2K Open超級計算機于2009年8月17日創造的世界紀錄。新紀錄比原紀錄多出1200億位,然而,他使用的這臺桌面電腦的配置僅為:2.93GHz Core i7 CPU,6GB內存,7.5TB硬盤! 不過這次為了加快計算完成的速度保住排名第一的位置,Fabrice Bellard使用了9臺聯網的電腦來對數據進行驗證, 若使用一臺電腦來驗證計算結果的話, 則需要額外增加13天的計算時間。 Fabrice Bellard在圓周率方面的輝煌成就, 使他創造多次圓周率計算的世界紀錄(計算10的整次冪位), 也曾因此而登上《科學美國人》法文版。

最后,讓我們不妨八卦一下,在Google中輸入Fabrice Bellard vs Linus Torvalds會出現什么呢?畢竟,在筆者心目中,他們就像羅伯特德尼羅PK阿爾帕西諾。
robertDeNiroVSalPacino
映入眼簾的第一個結果,是財富雜志科技欄目專訪全球在線支付巨頭Stripe的創始人的一篇文章,其中提到。There are also a few individual people, like Fabrice Bellard, Jeff Dean, and Dan Bernstein, who are just generally fabulously productive and make me feel guilty about how little I get done. 好吧,Jeff Dean…,與Jeff Dean并列,足以說明Fabrice Bellard的超強實力與卓越成就。

Fabrice Bellard 個人主頁:http://bellard.org/


網載 2014-07-03 12:09:41

[新一篇] 不懂技術的人不要對懂技術的人說這很容易實現

[舊一篇] 每個程序員都必讀的12篇文章
回頂部
寫評論


評論集


暫無評論。

稱謂:

内容:

驗證:


返回列表