做网页兼职的网站,成都网站开发培训多少钱,百度链接提交工具,域名到期 网站打不开摘要#xff1a;KVM以其精简的架构#xff0c;清晰的定位获得Linux社区多数开发人员的支持并快速被合并入主干#xff0c;从而成为x86全虚拟化技术的一颗新星#xff0c;其提出者Avi Kivity对于计算机体系架构和Linux内核有深入理解#xff0c;并且精通汇编和C。 
提到以色…摘要KVM以其精简的架构清晰的定位获得Linux社区多数开发人员的支持并快速被合并入主干从而成为x86全虚拟化技术的一颗新星其提出者Avi Kivity对于计算机体系架构和Linux内核有深入理解并且精通汇编和C。 
提到以色列自然会使人联想到犹太人和犹太教及其在二十世纪前半叶所遭受的种种苦难作为这个世界上最古老的民族之一除了其沉重的历史之外更使人惊叹的是这个面积仅有2.2万平方公里的弹丸之地在短短几十年中转变成为了高科技研发和创新的“全球性大国”。或许时刻处于强敌环伺的危险境地能够激发人类最原始的创造力使得以色列在诸多领域出类拔萃尤其在信息科技领域尤为突出世界上最大的科技公司不约而同都选择在以色列设立研发中心而且成果卓著例如Intel x86家族中比较重要的两代CPUSandy Bridge和Ivy Bridge都是由Intel以色列的研发中心研发的蓝色巨人IBM也早在上世纪七十年代就在以色列设立了庞大的研发中心且成果斐然。 但是值得称道的是科技巨头在以色列的成功并不能掩盖个体的创新力量所散发出的光芒尤其在云计算领域当崇尚人格自由同时又具有坚强性格这两种特质结合在一起所爆发出的创新的力量使得草根创业公司和个体也敢于在前沿领域与科技巨头一争长短其中的代表性人物就是Avi Kivity和他所在的以色列初创公司QumranetAvi Kivity提出并推动KVM基于Linux内核的全虚拟化方案以其精简的架构清晰的定位很快获得Linux社区多数开发人员的支持得以快速被合并进入主干从而成为x86全虚拟化技术的一颗新星。 
虚拟化技术的由来与所面临的挑战 
信息技术领域本不应是一个缺乏远见的领域但事实正好相反蓝色巨人IBM发明了PC但失去了整个桌面Intel发明并主导x86架构的处理器提出了摩尔定律但是失去了整个掌上而且即使是处于鼎盛时期的Intel即使有摩尔定律指路也没有人能料到有朝一日x86家族的处理器几乎快要统治整个数据中心而且x86家族处理器计算能力的提升速度快到可以在原本为桌面环境设计的处理器架构上采用“分时”来为多个虚拟环境提供运算能力的地步。 要知道虚拟化技术并不新早在1967年第一代的硬件虚拟化技术就由IBM提出蓝色巨人在他们的大型机中实现了以CP/CMS为代表的虚拟化技术。但直到2006年Intel和AMD才分别在各自的处理器中加入了“有限”的硬件虚拟化特性实际上是给CPU打了一个补丁分别称为Intel VT-x和AMD-V。与大型机所采用的专为虚拟化设计的处理器不同从PC机起家的以Intel为代表的x86家族的处理器生来就并不是为虚拟化设计的。要在x86家族处理器上完全向后兼容的同时加入硬件虚拟化特性无疑成为一个挑战硬件层面实现较为困难导致软件层面的实现复杂度也随之水涨船高。据估算Linux内核中虚拟化部分代码x86架构部分的代码行是IA64架构的1倍S390架构的7倍PPC架构的8倍。即使和ARM架构相比x86架构的复杂度依然是其4倍其复杂度之高从中可见一斑。  Talk is cheap, show me the code 硬件层面较为复杂的局面意味着在系统层面需要一个极为精简的设计从而确保x86的硬件虚拟化特性能够在Linux内核层面有较好的可维护性良好的性能同时保持一定程度的可扩展性以便为未来新的特性(补丁)的加入留有余地另外在那个时候Xen和Vmware依靠自己独有的技术分别在不同领域如日中天尤其值得一提的是Xen在开源领域几乎成为了虚拟化的事实标准而且开源领域一向奉行Don’t reinvent the wheel这一金科玉律这一切无疑都为提出新的虚拟化实现增加了巨大的不确定性但是当时Linux内核中还没有任何虚拟化实现这一现状又使得提出新的设计成为可能唯一的问题就是谁能够在足够短的时间内另辟蹊径提出新的方案并且获得多数人的支持这一点难度之大恐怕只有深入了解开源社区的人才会感受到要知道Linux社区恐怕是这个星球上最为“独裁”的组织没有之一而且语言“暴力”与人身“攻击”司空见惯(Alan Cox就是无法容忍这一点才选择退出Linux社区)要想在其中被认可并取得一席之地除了超强的技术实力之外更要有谦逊的品格非凡的耐心和绝佳的沟通技巧。 
Do one thing and do it well Avi Kivity提出的方案非常清晰而且巧妙充分遵循Linux源自Unix的设计思想把方案的关注点聚焦于Linux内核部分User space部分交给了稳定可靠的Qemu采用Qemu作为其用户空间的入口而且KVM仅仅实现HVM功能。遵循惯例Linux内核中的KVM模块通过设备文件暴露系统呼叫给User space的Qemu。这一切现在看起来似乎平淡无奇但是Avi Kivity方案的背后是要在极短时间内通过代码实现来证实并获得社区认可这一几乎不可能实现的任务这有赖于Avi Kivity对于计算机体系架构的深入理解不单单是x86架构的Intel VT-x和AMD-V还有后续陆续支持的其它架构并且深入了解Linux内核精通汇编和C。 以Avi Kivity为主的工程师仅仅花了不到一年时间就让Linux社区接受KVM的设计方案并且通过了代码Review最终于2006年10月合并进入2.6.20主干时至今日人们依然对于KVM合并进入Linux主干的速度之快感到不可思议从中也产生了一些不同的声音但是多数人还是倾向于最简单的一种答案那就是KVM良好的设计和实现是其最终被社区快速接受的主要原因。几年以后Avi Kivity接受采访最经常被问到的仍然是这个问题他的回答也总是轻描淡写说只不过提前花了半年时间在Linux社区学习如何更好的与社区开发人员协作但是我们知道这背后实际是其投入的大量心血和超强实力。 KVM的出现震撼了整个了Linux社区和业界人们惊异于其出众的性能更加折服于其精简的设计和良好实现在SPEC virt2013 Benchmark中基于同样的处理器、内存和存储KVM单在VM Density指标上以37%的优势超越对手以至于在极短的时间内这个世界上最重要的科技公司纷纷宣称他们将把KVM作为他们x86虚拟化的解决方案要知道这极为不同寻常在这之前以蓝色巨人IBM为代表的科技巨头已经在Xen上投入了大量的财力物力和人力如果没有决定性的因素科技巨头的Strategic dicision是不可能轻易改变的时至今日IBM在准备推出Power KVM打算把KVM移植到Power Linux上。就连以Google Glass、无人驾驶汽车和Project Loon著称的跟现代科技格格不入的前沿科技巨头Google也在其Google Compute Engine中采用KVM技术作为x86的虚拟化方案来和Amazon对抗。这一切只能说明KVM凭借其优异的性能和精简架构当仁不让成为了一项无法忽视的虚拟化技术屹立于云计算之巅。 
云计算的新征程OSv 在KVM合并进入Linux主干之后不久Avi Kivity很快成为内核KVM子模块的Maintainer2012年11月21日一封标题为“KVM: Retire as maintainer”的简短邮件出现在Linux社区邮件列表中在以KVM模块Maintainer身份贡献Linux社区6年零6个月之后Avi Kivity选择开启了新的征程发起并担任云计算创业公司Cloudius的CTO这是一个不同寻常的选择要知道在这个世界上在虚拟化和云计算领域恐怕没有多少人能够比Avi Kivity更有发言权这一次Avi Kivity敏锐的意识到除了x86家族的处理器架构之外已经成为云计算基石的Linux同样天生不是为云计算设计的因此具有极大的性能提升空间大胆提出并设计了专为云计算设计的操作系统OSv当然其依然是建立在Linux基础上但是其无需Context switch真正的Zero Copy以及Lock Free等特性使得其Less One second boot相对于众多宣称秒级响应的厂商来说更加具有说服力。尤其重要的是KVM之父通过OSv项目表达了对以Linux CGroup技术为核心的Containner技术的看法。Avi Kivity是如此低调以至于你很难在网上找到太多的关于他的信息只有寥寥几篇报道和访谈但是KVM在整个云计算领域中又是如此的炙手可热虽然今年已经是KVM进入内核的第八个年头但是KVM依然活跃我们依然难以估量其在云计算领域的真正价值而这一切都源自于这个地球上最危险的那个角落中的那名天才程序员Avi Kivity。注仅以此文表达对Avi Kivity、Yaniv Kamay、Dor Laor、Uri Lublin还有Anthony Liguori还有其他KVM以及Qemu开发人员的敬意。