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

与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的作者法布里斯贝拉(责编/仲浩)

Mozilla COO宫力:老牌操作系统如何助力新一代智能电视 App提高用户留存率新招:应用性能监测 韩国手游市场规模超万亿 2014中韩手游项目对接会开幕在即 SanDisk发展之路:专注SSD、推新产品线 AMD发展线路图曝光,欲造500+平方毫米GPU 全球移动开发者:IAP降温,企业应用成待掘金矿 Vuforia 2014 视觉大奖赛:寻找最炫酷AR增强现实应用,迈向巅峰! MapReduce谢幕,谁将成为最终的接棒者? 变身音乐控制器!开源JavaScript库NexusUI 从112台服务器到Q2 50亿基础设施开销,谷歌只用了15年 【技术文章】微信公众平台开发教程新手解惑40则 Qualcomm承诺投入1.5亿美元 扶持中国初创企业 物联网多了把“新板凳” 联想推三款智能硬件 .NET技术+25台服务器怎样支撑世界第54大网站 基调网络发布听云平台:“听”懂App性能 《近匠》豌豆荚李大海:用搜索敲开手机娱乐平台之门 微信开发HTML5轻游戏中的几个坑 【微信大会】企业号、支付功能、智能客服与LBS、电商开发解析 【CTO俱乐部走进海尔】活动图文直播进行中 燃料电池商业化,数据中心或将永不断电? 广告教父的哲学:值得F2P游戏借鉴的8条经验 UC李云:基于Chromium的浏览器如何打造更好体验 一周消息树:颠覆互联网思维?年薪50万码农转行卖凉皮 Coconut2D:跨平台2D游戏及应用开发工具 第八届中国大数据技术大会将于12月中旬隆重召开 10个常见的缓存使用误区 用户暴增下的收入降低,AWS面临尴尬 云数据中心选址PK:微软第一,IBM第二,谷歌最少 不应错过2014微信开发者大会的八个理由 为什么软件测试需要变革? 苹果和IBM成最佳搭档 微软谷歌或受威胁 请问oracle 自己带的http server(实际上是apache)如何配置class path 给你100分(OLE) 我在制作一个网络浏览器时遇到一个问题,在线等你的帮助 公司不做软件了,失业了,高兴送分 JNI 中内存管理的问题 ehlib控件的问题,如何在表中的一字段显示一个列表?分可以加,,,在线等 大家帮我 c# 的一大难题? 一定加分! 十万火急~~谁有完整的网站计划书? 能不能给我一份,万分感谢! 高分求教不用ActiveSkin实现金山词霸类窗体和按钮效果。 用delphi编写的dll结果不能调用,谢谢你的回答!!! mscomm控件读写串口的问题 正式加入水园 请教ListView控件的使用。 这里有100分(OLE) 公司不做软件了,失业了,高兴送分 请问,哪有oracle express object 的使用指南下载呀。 急~~~~~~哪里可以找到完整的网站计划书? 告诉我下载地址也可以,非常感谢!!! 急!!!怎样用VBA写一句话,判断word是不是当前活动窗口? CMainFrame::PreCreateWindow(CREATESTRUCT& cs) 的cs.lpszClass内容的不能改变 想了解下深圳的程序元的人工如何??请深圳的朋友介绍下好么?听说一般的都有6K~7K,是不是啊?? 插入表单的问题 SilverStream研讨会及中国CTO李渊明给人的印象 如何打印datawindow,操作如下:对同一个datawindow连续打印,但是每次打印都是不同的数据,espon1600K-III w_mainps.sqlinfo() 这个sqlinfo()可能是什么呢? 安装程序的问题 高分求购: MP3歌词协议 SAMI 小问题 现在163.net 163.com的 smtp服务都需要验证,如何在VB中实现验证才能发出邮件? 女人如何合理利用蟑螂(转) 开发游戏的时候,人物造型是怎么做出来的,3dmax里面吗?就是说人体数据和衣服数据是分开来的? 一个IDL文件的编译问题 请帮个小忙 如何编码实现工作流控制的自动化?(比如VC) vector 分配的内存怎么释放 bcb6 中的 FASTREPORT 的问题,100分送上 ASP中应用Excel遇到的问题 捕捉缓冲区的错误…………,相当急! ???SQL Server VS Windows 98,让我欢喜让我忧。哪位大虾帮我解忧愁??? 我的打印控件为什麽不能用? 关于生成文件的问题!!! 急需想知道在C++中,一个string要check它为date型(YYYYMMDD和YYYYMMDDHHMISS)可以使用什么方法?谢谢! 请问怎么样控制数子的格式,比如说我输入6.1,要它显示6.100,教我怎么操作? 如何做到单击数据窗口的某一行时,整行变为一个颜色,特别是要求选中的字段也要和整行一个颜色? 现在.net和java如日中天,我24岁开始学MFC,还有用吗? 遍历表单的问题(回答就给分,谢谢了!) 女人怎么这样啊? oracle8,字段是date类的,怎么插入记录呢, 我刚刚被骗了,这年头诚信都是屎 各位大虾看一下,举个例子!3q 问一个问题,高手请进! 酸性:HF,HCL,HBr,HI,哪个强 如图,用锤子以相同的力将铁钉垂直钉入木块,随着铁钉的深入,铁钉所受的阻力也越来越大.当铁钉未进入木块部分长度足够时,每次钉入木块的铁钉长度是前一次的 13,已知这个铁钉被敲击3次 科技创新作品怎么做?快告诉我,急啊!谢谢 一根蜡烛插入水中,下粘有小铁块,蜡烛全长l,顶端距水面H,每分燃烧M,求几分烧完.蜡烛密度0.9g/立方CM 铁的密度7.9g立方CM铁会往下拉蜡烛,我们几个算的是h/2m,但是不对吧 为什么氯化铵溶液呈酸性虽然氯化铵水解 但是水解而出的氨水会电离又产生氢氧根 那怎么知道是水解出的氢离子多还是电离出的氢氧根多呢? 青少年怎样为实施科技创新做贡献初四政治题、分条答 在一个有关硫酸反应式中怎么区别硫酸是显酸性,氧化性,脱水性 氯化铵溶液为什么呈酸性用离子方程式表示一下 为什么将橡皮泥放入水中后,橡皮泥立即沉入水底,但把它捏成空心的船状再放入水中,却浮在水面上?是如何的增加排开水的体积的(主要是这个问题)可是橡皮泥的密度一直没变啊,之前沉入 焦硫酸和硫酸哪个酸性强 氯化铵和硫酸铝酸性比较谁的酸性更强 刘星将一块重2N的橡皮泥放入水中后橡皮泥立即沉入水底;他取出橡皮泥将其捏成船状再放入水中“泥船”却漂浮在水面上他是利用了______________的方法来增大浮力的 酸性强弱对比硫酸比盐酸? 为什么NH4CL溶液呈酸性,用离子方程式表达 (化学题)自行车车胎内为什么要填充气体而不用实心车胎 一根圆柱形蜡烛长18cm,横截面积为5cm2,密度为400千克每立方米,蜡烛底部粘一块体积不记得铁片放入水中, 氯化铵是水溶液呈酸性,怎么看出来的,还有怎么判断溶液显酸碱性呢我都糊涂了,不是硫酸硝酸碳酸盐酸这些显酸性的吗,怎么这个氯化铵不是盐的吗,怎么也显酸性啊 公共自行车车胎实心的么? 一根圆柱形蜡烛长L=18cm,横截面积S=5cm²,密度ρ=0.4kg/cm³一根圆柱形蜡烛长L=18cm,横截面积S=5cm²,密度ρ=0.4kg/cm³,蜡烛底黏一块不计体积的铁片放入水中.一开始蜡烛没入水中的部分长14 小物体与轻棒碰撞的一道题光滑平面上放着一根竖直的轻棒,一个质量为m的小物体以速率为v与轻棒相撞,碰撞后小物体以v/2的速率弹回,求碰撞后轻棒的角速度 自行车车胎内为什么要填充气体,而不用实心轮胎?从分子的角度分析. 声在铁中的传播速度是多少 求一篇科技创新论文 自行车车胎为什么是充气的而不是实心的?(从化学角度来回答)如题 跟声音在铁中的传播速度有关为了测定声音在铁中的传播速度,研究人员找来一根170m的铁管,在铁管的一端安装一个接收声音能精确计时的精密仪器,当研究人员在铁管的另一端敲击一下,仪器 一个物体碰撞用弹簧连着的两个物体的问题我自己画的图,光滑地面上有一个劲度系数k的弹簧连着2个相同的小球,远处一个一个大球以速度V滚过来,撞在左边的小球上,求弹簧能缩短的最大长度 12、 在25℃时将pH=11 的NaOH 溶液与pH=3 的CH3COOH溶液等体积混合后,下列关系式中正确的是( ) A.c 选哪个?为什么?要具体的原因啊?12、 在25℃时将pH=11 的NaOH 溶液与pH=3 的CH3COOH溶液等体积 将橡皮泥沉入水底重怎样能使它浮在水面上 怎么设计一个两物体相碰撞的实验探究碰撞中的不变量,在一维中设计考虑,能量的损失. 在25℃时将pH=11 的NaOH 溶液与pH=3 的CH3COOH溶掖等体积混合后为什么 c(CH3COO-)>c(Na+) 化学平衡常数在什么情况下改变?为什么0.1mol每升盐酸和0.1mol每升的氢氧化钠溶液中水电离的氢氧根浓度相同 物体碰撞的声音有哪些文字, 在25℃时将pH=11 的NaOH 溶液与pH=3 的CH3COOH溶掖等体积混合后, 下列关系式中正确的是( ) A.c (Na+在25℃时将pH=11 的NaOH 溶液与pH=3 的CH3COOH溶掖等体积混合后,下列关系式中正确的是( 相同温度下0.1mol/L的NaOH和0.01mol/L的盐酸溶液中,水的电离程度,水的电离程度大小为A NaOH中大 B 盐酸中大 C 相同 D 无法确定 一个 物体 撞击 另一个物体 动能计算一个钢珠的动能是 10000J 那么撞击 100公斤的钢珠后 100公斤的钢珠 会 有 多快 钢珠1 的 质量是10kg 速度是20米 撞击钢珠2 钢珠2 会 有每秒几米的移动速度? 请帮我计算一下热量我今天吃的比较多早上一袋永和无蔗糖豆浆,二块蒸糕(就是那种夹着芝麻的黏黏的糕),一根双汇弹脆火腿肠,一杯消健酸奶 中午半盒饭,卤菜(2块5的素鸡和腐竹),一个 比较浓度为0.1mol/L的下列溶液中由电离出的C(H+)的大小 (1)盐酸(2)醋酸溶液(3)硫酸溶液(4)氢氧化钠 硫酸铝溶液的颜色 40度的气体变成40度的液体放出的热量咋算 声音在25度铁中传播的速度 点解硫酸铝溶液,无论点解多久,溶液都显酸性? 从分子和原子的角度上分析为什么用打气筒可将空气压入自行车轮胎内请形象一点说 为什么空气的成分保持相对稳定? 硫酸铝水溶液显酸性,有什么用途?如题 计算气体完全燃烧所释放的热量的公式是什么 酸性溶液中都含有氢离子,所以含有较多氢离子的溶液一定是酸性溶液吗酸性溶液中都含有氢离子,所以含有较多氢离子的溶液一定是酸性溶液 这句话为什么是正确的?NaHCo3 是呈碱性的但它含 碳酸钠溶液 盐酸反应 碳酸钠溶液中加入过量盐酸 离子方程式过量碳酸钠溶液中加入盐酸 离子方程式请按顺序 下列氧化物与稀硫酸反应后,得到蓝色溶液的是A,氧化锌 B 氧化铁 C 氧化铜 D 氧化镁 若某种溶液假如碳酸钠溶液后,观察到----------------的现象,则所取溶液为酸性 盐酸能否和碳酸钠水溶液反应,生成什么也就是酸能否与金属水溶液反应 用实验测定空气的成分,顺便说下依据. 一级水火箭制作包括:箭身、发射架、降落伞写明材料准备 酸性溶液中一定含有氢离子吗rt有的盐溶液不也是酸性的吗 盐酸与纯碱溶液反应 怎么看正能量和负能量! 含氢离子但不是酸的化合物的溶液会不会是酸溶液或酸性溶液 全国青少年科技创新大赛服装要求男生一定要穿西服吗?穿衬衫可不可以?8月在广州比赛穿西服会不会太热了不是我要去,是一个朋友,所以具体要求我也不太清楚有没有人知道往届都穿什么 空气中氧气大约占空气体积的( 铁钉与铁屑密度一样么 刘星将一块重2N的橡皮泥放入水中后橡皮泥立即沉入水底;他取出橡皮泥将其捏成船状再放入水中,"泥船"却
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘