acm-header
登录

ACM通信

最后一个字节

虚拟机改造


孟德尔Rosenblum

信贷:斯坦福大学

斯坦福大学教授Mendel Rosenblum,首届ACM Charles P.;“查克”塞克在计算机领域的突破奖,他在20世纪90年代末开发了开创性的虚拟机,作为一种使不同的软件环境共享计算资源的方式。在接下来的20年里,这些想法将改变现代数据中心和强大的云计算服务,如亚马逊网络服务、微软Azure和谷歌云。在这里,Rosenblum将谈论可伸缩性、系统设计以及该领域的变化。

虚拟机是IBM在20世纪60年代首创的。是什么促使你在20世纪90年代重新审视这个概念?

当我到了斯坦福大学,我加入了约翰·轩尼诗,他正在建造一个非常大的超级计算机,拥有共享内存,可扩展到4000个处理器。他的团队需要一个操作系统,因为现有的系统无法在这么大的机器上运行。这促使我开始考虑可扩展的操作系统。与此同时,我正在做另一个关于在现代硬件上构建操作系统的项目。我开始尝试构建可以运行操作系统的模拟环境。

这就是所谓的simo机器模拟器。

它是一款运行和外观非常像硬件机器的软件,可以在上面启动操作系统及其所有应用程序。它比真正的机器慢得多,但它让我们可以模拟硬件在真实工作负载下的运行情况。

当时正在为多处理器机器开发操作系统的Sequent Computer Systems公司对您在可伸缩操作系统方面的工作很感兴趣,但他们告诉您,他们的团队太小,无法实现如此重大的更改。

他们还表示,他们需要这台机器能够运行微软的Windows操作系统。所以当我从波特兰坐飞机回来的时候,我突然想到,也许如果我们把虚拟机的想法带回来,用它来分割我们正在建造的这些大机器,我们就能在它们上面运行现有的操作系统。


“技术已经成为世界上如此重要的一部分,它做了很多好事,但它也使一些不那么好的事情成为可能。”


不久之后,您和您的学生构建了一个虚拟机监视器,它可以在多处理器上运行多个商用操作系统的副本——从MIPS处理器开始,然后,当您决定将您的工作商业化时,Intel X86。

英特尔X86是当时占主导地位的处理器,尽管我们并不真正了解它有多复杂。它在技术上被称为不可虚拟化,因为它没有足够的硬件支持。所以我们必须想出一些技术来做到这一点。Linux非常简单,因为它不怎么使用X86。但是Windows操作系统花费的时间太长了,我们不断地发现关于X86架构的新东西来弄清楚如何做到这一点。

当您解决了所有问题后,您的原型需要8个小时才能启动。

但它仍然有所有调试的东西,以及所有我们需要找出的东西,当出现问题时。当时,我的妻子正在经营公司,她说:“8个小时,这可不行。”

我告诉她,“这是个非常好的消息。我们知道要运行Windows需要做的一切;我们只需要弄清楚如何让它运行得足够快。”

VMWare成立于1998年。从那以后,你对大学和创业之间关系的看法有什么改变吗?

研究人员,尤其是在系统等应用领域的研究人员,总是试图产生影响。你能产生影响的最大方式之一就是利用你的想法,改变这个行业的做事方式——这是最好的结果。我很高兴我能够创办一家公司,并推动整个行业以一种为每个人创造更好结果的方式做事。

它的另一方面可能就不那么高尚了——你可以赚很多钱。环顾四周,你会发现惊人的财富正在被创造出来。如果你不是其中的一员,你最终会落后于别人,或者感觉不到成功。

显然,VMware对行业产生了巨大的影响。知道了云计算行业从那时起的发展历程,您是否会采取不同的做法?

VMware在商业风险投资方面取得了惊人的成功。它有一个独特的产品,它可以为此收费。但它没有成为标准的虚拟化平台的原因之一是,主要的云计算供应商选择了开源解决方案,而不是花高价购买私有软件。

我在VMware的时候也曾为此挣扎过。我非常想弄清楚如何制作一款既成功又普遍使用的产品。我现在会做不同的事情吗?这是一个挑战。当你在做一些新的事情时,你需要花费大量的资源去弄清楚如何去做,而你也希望能够因此获得奖励。我知道现在人们正在创建更多的开源公司,但我就是不知道该怎么做。

在你的职业生涯中,这个领域还发生了哪些变化?

过去,在计算机科学中,你会想到一个想法,基本上你会考虑它能做的所有好事以及它支持的所有积极的场景。现在,我们看到了一些非常可怕的意外后果。技术已经成为世界上如此重要的一部分,它做了很多好事,但它也使一些不那么好的事情成为可能。人们希望计算机科学家能够预测这些情况,其中一些人认为我们技术人员所需要做的就是上更多的道德课程。我对此有点怀疑。

你在BeBop休假后回到了斯坦福,BeBop是一个开发平台,于2016年被谷歌收购。你在忙什么?

斯坦福大学有一个规定,在任何七年的窗口期,你都可以休两年的假。1998年,我休假成立了VMware,最近又成立了BeBop,但我喜欢在斯坦福,新学生和新想法不断涌现。

我最近一直在研究一个非常古老的问题。如果你有一堆电脑,例如在一个数据中心,它们都有时钟。我们仍然使用一个非常古老的协议,称为网络时间协议,或NTP,来同步这些时钟。从本质上说,它涉及到舞台信息,“我想我的时代到了。你认为你的时间是什么?”从人类的角度来看,你最终得到的时钟是同步的,因为每个人的设备看起来显示的时间都差不多。

但是对于计算机,在程序中,它是毫无价值的。我可以很容易地用一台电脑发送一条信息,然后发现它比我发送的时间来得早。所以我和我的同事巴拉吉·普拉巴卡尔一直在研究一种新的时钟同步算法可以将时钟同步到个位数纳秒。

回到顶部

作者

利亚霍夫曼是美国纽约Piermont的一名科技作家。


©2020 0001 - 0782/20/4 ACM

如果您不是为了盈利或商业利益而制作或分发本作品的部分或全部,并在第一页注明本通知和完整引用,则允许您免费制作本作品的部分或全部数字或纸质副本,供个人或课堂使用。本作品的组成部分必须由ACM以外的其他人享有版权。信用文摘是允许的。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,需要事先获得特定的许可和/或费用。请求发布的权限permissions@acm.org或传真(212)869-0481。

数字图书馆是由计算机协会出版的。版权所有©2020 ACM股份有限公司


评论


jean - louis拉菲特

相当不错的文章,它表明孟德尔距离戈德堡博士的基本HDW虚拟化者还有很远的距离…
所以没有白色的新东西
问候,
jean - louis


德米特里•扎伊采夫

至于虚拟机,我一直对基准很感兴趣,比如用LAPACK或者别的什么,比如它们的减速程度。最近我们发现Docker在这方面非常出色。
最好的祝愿,
德米特里•扎伊采夫
http://daze.ho.ua


显示所有2评论

登录为完全访问
»忘记密码? *创建ACM Web帐户
文章内容:
Baidu
map