VMware 虚拟平台
制造商:VMware, Inc.
电子邮件:sales@vmware.com
价格:299 美元
评测人:Brian Walters
不久前,我看着我的办公桌,心想:“对于一位顾问来说,多少台PC电脑才算太多?” 我经常使用 Windows、Linux 和 SCO 操作系统工作,并且通常需要测试不同系统之间的交互。我数了数,包括放在我桌子上的公司网络服务器,总共有五台PC电脑。想出神奇的数字“四”相当简单,因为我的键盘切换器只有四个插槽,而且我不想再买一个。我把网络服务器扔到桌子底下,没有显示器和键盘。这种解决方案导致我在进行不同项目时需要加载不同的操作系统——这当然效率不高。最终,我找到了解决方案——VMware, Inc. 公司的 VMware 虚拟平台。
二月中旬,一位同事给我发了一封电子邮件,描述了一种用于PC电脑的虚拟机。这引起了我的兴趣——这可能是真的吗?如果真有我朋友描述的那种虚拟机,那么可能性似乎是无限的。虚拟机曾经在老式 IBM 大型机上运行;肯定需要特殊的硬件,而不仅仅是今天销售的普通“大众化”PC电脑。几次鼠标点击就带我来到了 VMware 网站,那里提到了即将推出的 beta 测试计划。我注册了,并耐心地等待着 3 月 15 日的 beta 版本发布日期。
根据该网站的信息,VMware for Linux 允许您的 PC 作为虚拟机的宿主操作系统,我称之为 VM。虚拟机向客户操作系统呈现一个标准 PC 的完整映像。VM 也有自己的 BIOS(见图 1),可以像您的真实计算机一样进行调整。许多组件都被虚拟化,例如网卡、声卡、硬盘驱动器和鼠标。然而,处理器并没有被虚拟化;它更像是一个串行多路复用器,指令从不同的 VM 和宿主操作系统多路复用而来。这为用户带来了更好的性能,因为指令在执行时无需任何转换。
遗憾的是,这种出色的性能也是有代价的——您无法单步调试程序,也无法在您的 VM 上测试 SMP(对称多处理)应用程序。单步调试问题应该在本文发表时得到解决,但 SMP 问题需要更长的时间。宿主操作系统支持 SMP 系统,因此您实际上可以在不同的处理器上运行多个 VM。硬盘驱动器的虚拟化还为开发人员增加了一个很棒的功能——回滚。VM 硬盘驱动器可以配置为只读,以允许客户操作系统在日志文件中进行更改。如果出现问题,只需重启 VM,一切都会恢复到原始状态。想象一下,这使得测试安装脚本变得多么容易。
终于,到了可以下载 beta 版本来测试它是否名副其实的那一天。在 beta 版本发布的当天早上,该网站收到了太多的访问量,以至于该公司不得不迅速建立镜像站点。我对可用的文档数量感到满意,其中包括关于您可能遇到的错误以及如何修复它们的充足信息。
我将我的主机器从 Windows 重启到 Linux,并按照安装说明进行操作。VMware 安装起来很容易,并且似乎与 Red Hat 5.2 和 2.0.36 内核完美契合。然后我安装了通过电子邮件收到的许可证文件。我启动了 VMware 并完成了配置向导,这使得为 Windows 98 设置即用型配置变得很容易(见图 2)。接下来,我放入了我的 Windows OEM 预启动软盘,并点击了“电源”按钮。在窗口中,出现了一个正常的 BIOS 屏幕,右侧带有 VMware 徽标。十五分钟后,我完成了。就像常规 PC 安装一样,新的虚拟磁盘在虚拟重启和操作系统安装后进行了分区和格式化。我的测试安装与正常的 Windows 9x OEM 系统加载之间绝对没有任何区别。
接下来,我加载了 Caldera、SuSE、Windows 95 甚至 Windows NT 终端服务器。所有这些操作系统都毫无问题地加载了,我使用了出色的文档来使虚拟声卡和网卡工作起来。最后,我将我的安装转移到了一台配置更好的 PC 上,一台双 Celeron 300a,主频为 450MHz,配备 256MB 内存和 13GB 硬盘驱动器。由于 VM 在所有宿主机上看起来都一样,所以我能够将我之前的安装复制到更大的 PC 上。随着功率和内存的增加,我能够同时运行这些操作系统中的大多数,并且每个操作系统都具有充足的性能(这很好,因为 Windows NT 终端服务器是一个资源消耗大户)。性能的最佳例证可能是我在我的宿主 PC 上开始编译 2.2.5 Linux 内核,在运行 SuSE 的 VM 上开始另一个内核编译,并在运行 Windows 95 的 VM 上观看 RealVideo 视频片段时。声音和视频从未卡顿。
图 3. Windows 98 运行 RealPlayer,SuSE 6.0 运行 Star Office,Red Hat 5.2 运行 GIMP
现在,我桌子上的四台 PC 电脑已经变成了更多台。对 FreeBSD、Solaris 和 Windows 2000 Beta 的支持目前正在进行中,应该在您阅读本文时可用。然而,一些操作系统并不在近期计划内:SCO OpenServer、UNIXware 和 NetBSD 不计划作为官方 1.0 版本的受支持平台。VMware 允许我同时测试多个版本的 Windows 和 Linux 工作站。我希望在 FreeBSD 和 Solaris 获得支持后更多地了解它们。由于网卡虚拟化,我可以为每个 VM 分配自己的 IP 地址,并实际测试多台工作站如何从一台 PC 相互交互。我发现即使在您的宿主操作系统在 LAN 上没有地址时,VM 也可以响应 DHCP 服务器。
像这样一个令人难以置信的应用程序要花多少钱?考虑到今天一台像样的 PC 电脑的成本至少为 1000 美元或更多,我认为 999 美元将是一个非常棒的价格,因为它将为您节省大量空间。不过,VMware 的人想法不同——只需 299 美元,您就可以让您的计算机患上“多重 PC 紊乱症”。学生可以享受 67% 的折扣,即 99 美元。虽然我不向所有游戏玩家推荐它,但如果您正在为 Linux 或 Windows 开发应用程序,这绝对是您不应该缺少的工具。VMware 对于测试具有许多新功能的 Linux 新发行版也非常有用。
