说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

与Linus Torvalds“并列”,虚拟化天才程序员法布里斯贝拉

HTML文档下载 WORD文档下载 PDF文档下载
谈起阿兰·图灵、高纳德、艾兹赫尔·戴克斯特拉,我们并不陌生,这些振聋发聩名字背后是颠覆了人类生活的现代计算机工业。然而有些人的荣誉却远低于他的贡献,比如Fabrice,过去20年最闪亮和最有影响力的程序员之一。

【编者按】在过去的大半个世纪中,计算机科学界涌现出了一批不世出的天才,比如阿兰·图灵、高纳德、艾兹赫尔·戴克斯特拉,他们影响了整个世界,同时也获得了整个世界的尊重。然而有些人的荣誉却远低于他的贡献,比如这个被誉为“过去20年最闪亮和最有影响力的程序员之一”的Fabrice Bellard:

  • 1997年他发现了最快速的计算圆周率的算法,是Bailey-Borwein-Plouffe 公式的变体。
  • 2000年他化名Gérard Lantau,创建了FFmpeg项目。2004年他编写了一个只有138KB的启动加载程序TCCBOOT,可以在15秒内从源代码编译并启动Linux系统。
  • 2003年开发了Emacs克隆QEmacs。2005年用普通PC和VGA卡设计了一个数字电视系统。
  • 2009年12月31日,他声称打破了圆周率计算的世界纪录,算出小数点后2.7万亿位,仅用一台普通PC机。
  • 2011年,他单用JavaScript写了一个PC虚拟机Jslinux 。这个虚拟机仿真了一个32位的x86兼容处理器,一个8259可编程中断控制器,一个8254可编程中断计时器,和一个16450 UART。
  • Fabrice Bellard,法国著名程序员,QEMU、TinyCC、FFMPEG等作者。

下面我们一起看Liu Guo Hui发表在OpenStack中国社区发表的文章,以下为原文:


众所周知,虚拟化技术是构建云基础架构不可或缺的关键技术之一,而在众多虚拟化技术实现当中,KVM(Kernel Virtual Machine)因为Linux内核对其的良好支持(KVM于2006年10月被合并入Linux Kernel 2.6.20中),以及其精简的架构(在最新的Linux Kernel 3.14.rc5 中除硬件之外的核心框架仍然只有不到10000行)越来越多的被应用于超大规模的IaaS部署中。

但是我们知道运行于内核态的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。 在笔者的普通桌面电脑的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并列,足以说明Fabrice Bellard的超强实力与卓越成就。

原文链接:不朽传奇-云计算技术背后的那些天才程序员:Qemu的作者法布里斯贝拉(责编/仲浩)

Facebook在移动路上走过的那些弯路 曙光聂华:推动数据融合 CloudStack Committer李学辉:2013年社区将爆发 继续霸权:美众院否决联合国掌控互联网 墨迹天气创始人金犁:巧用细分市场的力量 Windows 8的IE10在浏览器安全测试中独占鳌头 程序员如何做出“不难看”的设计 JDK6明年2月停止更新,甲骨文呼吁尽快升级至7 《时代》评选年度十大视频游戏,激战2居首 《时代》评选年度十大科技产品,iPhone 5居首 Loopjoy:让开发者在移动游戏里贩售真货 iPhone 5S真机照片泄露 明年初上市 Beeline:从“蓝精灵村庄”到“捉鬼敢死队” Windows Server 2012域服务的六大改进 如何编写出优美的JavaScript代码? Unity CEO:不会因赌博游戏谋取金钱利益 云领域:且看亚马逊、Rackspace、微软及谷歌四国争霸 十一位EMC高管读2013技术趋势 你准备好了吗? Yahoo:拥抱Hadoop和HTML5 苹果聘女黑客为系统安全员 曾让Vista推迟发布 移动游戏定价之谜:0.99美金行不通 9.99美金和19.99美金才是王道 2012末日年:《时代》评选年度十大App 使用HTML5 Web存储实现离线工作 紧跟亚马逊、谷歌步伐 微软下调Azure云服务价格 云计算一周热点回顾:Hadoop专家分享大数据技术工具与最佳实践 Python之父Guido Van Rossum离开谷歌 一月加盟Dropbox 图灵奖获得者Butler Lanpson:计算机在做些什么 华为高级技术经理Anoop Sam John:HBase的二级索引 秦令今:技术是竞争的核心,形成自己的特色! 兰旭:拒绝同质化,做自己的真材实料! Cloud Foundry直面PaaS对手 初具商用能力 有人能告诉我广东省C程序员与JAVA程序员的薪水比较吗?为什么会有这种差距呢 请问用javaApplet如何控制IE界面? 点对点的讨论 水平考试与资格考试及格分别是多少分? 如何再网页中实现打印功能,份也打印。 我发现了一个网站的BUG,我该怎样进去? 到处都是泡泡,俺看的想吐,晚上再来算了。 怪事, 屏幕变黑白 我的问题_6 MYSQL中like的问题 请教打印预览问题 请问,如果我想把,file edit tools window这个主菜单栏动态去掉,怎么做? 如何用程序代码实现在Memo文本编辑框中被选中的文字加下划线。 怎样分析tcp报文(我很急呀) *.idl文件如何使用? 各位大侠,怎么写一个php在线打分的程序阿? 我测试一下 感兴趣的去试试! IE外壳扩展的程序 Delphi 6.0的一个Bug??? 我怎么把字符串放进缓冲里?急急急!!! 恭喜 zhipop 喜得漂亮的可爱的千金 几个小问题想请教大家 如何将浏览器的地址栏里的IE图标换成自己的图标? r俺明天想去给我的宝马生生级,不算显示器,3000元左右,请各位大侠们赐教该什么配置 2000下写的程序,NT 4.0workstation上为什么不能跑? 启用新主页下载数据窗口编辑器 请教Qbasic中的几个问题..... 用BCB如何向Oracle8.0.5中更新BLOB 用ODBC编程时发现错误:nvarchar 类型无数据类型同其绑定,用CString 出错!如何解决? 救命,救命!!!!!!!!!!!! 【 这两天好像来了很多新人嘛!来报个到吧! 】 请教:如将一个 FormView 的 ScrollBar 去掉 在asp中怎么定义可变长的数组? 关于文本框的问题(你能回答吗?) X档案第三季有一集叫《网络情人》,讲的什么内容? 如何登陆interbase de local server? 确定星座是按农历,还是公历????? 请问哪里能买到苹果7300主板,大概多少钱? vc高手快来帮我 我可以通过style定义普通字体的大小,却不能定义表格中字体的大小 BDE + SQL AnyWhere6.0问题!求救!SOS! 最新消息:泡泡是个PLMM 如何实现关机前所有文挡的自动保存 兄弟要进行一项庞大的工程 . 输全国县以上地区的编码. 我用powerbulider设计了一个报表,如何能在vc程序中使用这个报表 如何用回车键代替tab键在sle之间移动焦点 讨论:关于翻译英文文章的版权问题????????? 【 本人收到N多从+888发来的短信息,内容是:此信息无法显示!Faint! 】 如何将程序做成30天的试用版本并禁止拷贝? 请问select top 10 * from table order by time , time字段有很多相同记录 请问:一千瓦等于多少马力 500克等于多少个100毫克 现有0.1摩尔每升硫酸钠额溶液300毫升,0.1摩尔每升的硫酸镁溶液200毫升和0.1摩尔每升的硫酸铝溶液100毫升,这三种溶液中,硫酸根离子的浓度之比是()A.1:1:1 B 3:2:2 C.3;2:3 D 1:1:3 空调多少匹是怎么换算出来的,空调匹数跟瓦数怎么换算,1千瓦等于多少马力? 2000毫升水有多少千克此问题对我很严重.还请各位尽量回答我. 1摩尔每升的碳酸钠100毫升,加入50毫升2摩尔每升的硫酸钠,将所得溶液稀释到200毫升我算的答案是2摩尔每升,老师说不对, 一马力等于多少瓦? 50毫升B摩尔每升的ALCL3溶液加入50毫升A摩尔每升氢氧化钠溶液当A小于等于3b时生成氢氧化铝的沉淀物质的量 配置500摩尔每毫升的Na2SO4溶液,需要硫酸钠的质量是多少克?配置500mL0.2摩尔每毫升的Na2SO4溶液,需要硫酸钠的质量是多少克? 功率和马力是怎么换算? 向20毫升氯化铝溶液中滴入2摩尔每升氢氧化钠溶液时,沉淀质量与所滴加氢氧化钠溶液体积(ml)铝离子完全沉淀时沉淀质量为0.78g,假设溶液中有氢氧化铝0.39克,则此时用去氢氧化钠溶液的体积 吨,升、立方米、立方分米、立方厘米、克、毫克,换算如题 功率和马力怎么换算现在汽车说的是功率,和原来的马力怎么换算? 向20毫升氯化铝溶液中滴入2摩尔每升的氢氧化钠溶液时,得到氢氧化铝沉淀的质量与所滴加氢氧化钠溶液体积关系如图所示.(1)图中A点表示的意义是____________.B点表示的意义是____________.(2)上 每立方厘米0.16毫克换算成千克每立方米 1千瓦等于多少马力 如何配置0.5摩尔每升的无水碳酸钠溶液500毫升 例如1A= mA = uA1V= kV请各位给我初二全部物理的单位换算,进率 136匹马力等于多少千瓦也就是新B200的功率,随便说一下,这车真的买来值吗?是不是比以前的奔驰要缩水一些? 实验室用NaCO3·10H2O 晶体配制500毫升0.1摩尔每毫升的碳酸钠溶液 应称取NaCO3·10H2O 多少克 物理上单位换算一千米每时等于多少米每秒? 汽油机1千瓦等于多少马力汽油机和柴油机一样吗 取500毫升碳酸钠溶液与300毫升浓度为一摩尔每升的盐酸反应,在不断搅拌下将碳酸钠溶液逐滴滴入盐酸中与将盐酸滴入碳酸钠溶液中,所产生气体的物质的量之比为3:2.则碳酸钠的浓度是多少? 物理单位换算关系 1匹马力等于多少千瓦 配制500毫升2摩尔每升的硫酸溶液需浓度为百分之九十八,其密度为1.84克每立方米的浓硫酸呵水各多少 一吨每立方米等于多少千克每立方分米?一千克每立方分米等于多少克每立方厘米?千克每立方米等于多少千克每立方分米?. 1马力等于多少千瓦 如何配制溶液500毫升的碳酸钠溶液 求数学单位换算 1L=?立方cm 1平方米=?平方厘米 1平方分米=?平方厘米求数学单位换算 1L=?立方cm1平方米=?平方厘米1平方分米=?平方厘米 请问1千瓦等于多少马力 用98%浓硫酸配制500毫升1.0摩尔每升的硫酸溶液? 尺与平方米的单位换算是什么样的? 1马力等于多少千瓦时 用98%的浓硫酸(密度为1.84克每毫升)配制1摩尔每升的稀硫酸100ml,需要硫酸多少? 网络10兆等于多少m 一度电是一千瓦时还是3.6*1000000瓦时 1马力等于多少功率 需要0.5摩尔每升的硫酸500毫升若使用溶质的酸进行配置,问题是:1.该浓硫酸的物质的量浓度 2.需要浓硫酸的 一千瓦一个小时一度电如何计算出来的介绍一下这一块儿的..我不是很懂... 一升等于多少公斤谢谢了,大神帮忙啊 在20毫升0.1摩尔每升醋酸溶液中逐滴加入20毫升0.1摩尔每升的氨水溶液,溶液导电能力逐渐增强.为什么? 114磅是多少公斤?磅和公斤的换算公式是怎样的呀? 舍得酒广告的含义 将20毫升0.1摩尔每升的醋酸钠与10毫升0.1摩尔每升的盐酸混合溶液显酸性,溶液中个离子浓度的比较 血的单位CC跟毫升跟克是怎么换算的 舍得酒经典台词 下列溶液中含氯离子物质的量浓度最大的是( ) A.30毫升0.2摩尔每升KCI溶液 B.20毫升0.1摩尔每升氯化钙溶液,C.10毫升0.1摩尔每升氯化铝溶液 D.100毫升0.25摩尔每升氯化钠溶液 体积CC和毫升怎么换算? 舍得的含义?如何舍得,如何取舍 把2.5毫升0.1摩尔每升的硫化钠溶液与1毫升0.1摩尔每升的亚硫酸钠溶液和7毫升0.1摩尔每升的盐酸混合后,充分反应后生成的产物中硫元素的存在形式为()1.S2.S,H2S3.S,SO24.S,H2S,SO2可答案是3阿 cc和毫升怎么换算啊?cc和毫升有什么关系?它们之间应该怎么换算?2000cc等于多少毫升?急用!谢谢了!~ 怎样辨别舍得酒的真假想买一瓶给老爸,还怕买到假酒,请懂行的朋友帮帮忙!积分不多, 24毫升浓度为0.05摩尔每升的NA2SO3溶液恰好与20毫升浓度为0.02摩尔每升的K2CR207溶液完全反应,已知NA2SO3被K2CR207氧化为NA2SO4,则元素CR在还原产物中的化合价是多少设CR在还原产物中的化合价为X,0.0 CC与毫升是怎么换算的? 250毫升等于多少毫克 配制0.2摩尔每升硫酸钠溶液50毫升,需要称取固体硫酸钠的质量是多少 毫升怎样换算成斤,公式是怎样的.我说的是酒 请问250毫克等于250毫升吗? 将100毫升0.3摩尔每升的硫酸钠溶液和50毫升0.2摩尔每升的硫酸铝溶液混合后,所得溶液中硫酸离子的物质的量
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn