选择Windows 7的酷理由–虚拟化支持(2/5)

在IT专业人员的圈子中,“虚拟化”这个概念非常流行。简单来说,这种虚拟化技术可以将一台物理电脑通过软件方式虚拟出多台逻辑电脑,每台电脑有自己的一套硬件平台,可以安装不同的操作系统,实现不同的用途。另外Windows 7的启动引导程序还可以直接引导保存在.vhd文件中的操作系统,.vhd文件是微软虚拟化软件所用的磁盘文件,也就是说,在虚拟机中安装的操作系统,还可以脱离虚拟化平台,直接由宿主机的硬件加载并运行。

XP Mode

其实虚拟化是一个很好的技术,现在大家都在提倡节能减排,而虚拟化技术就可以将物理设备的数量降到最低。例如很多企业由于各种技术或规章制度上的限制,某些应用可能需要独立的服务器来提供,然而这些应用并不能充分利用服务器的所有性能,因此服务器的运算能力在大部分时间都被浪费了。而通过使用虚拟化技术,就可以将这些应用安置到用虚拟化软件虚拟出来的电脑中,这样原本需要十台物理服务器提供的服务,通过虚拟机可能只需要用一台物理服务器即可提供,不仅节约能耗,而且可以节约机房的空间占用。

对于普通用户,虚拟化有什么作用?其实这是解决应用程序兼容性的一种好方法。很多企业可能想要升级到Windows 7,可某些关键应用程序由于兼容性问题,无法运行在Windows 7中。为了解决这种问题,就可以在Windows 7中使用虚拟化技术虚拟一台电脑,并安装Windows XP等老版本操作系统,将这些不兼容的应用程序运行在虚拟机环境中。

其实这种做法在Windows XP/Vista上也可以实现,微软就有免费的Virtual PC 2007可以创建虚拟机,那么Windows 7中的虚拟化技术又有什么独特之处?让我们先来看一个例子,在经过相应配置的Windows 7系统中,打开开始菜单,在搜索框中输入“Word”,大家都知道,这样就可以找到系统中安装的“Word”软件。但实际上搜索结果如图 1所示,为什么这里出现了两个版本的Word,Word 2007后面的括号中还标注了“Vista”字样?而且这两个版本可以并行运行(如图 2所示)。

21

1,同一个程序的不同版本同时出现在同一个系统中

22

2,同一程序的不同版本还可并行运行

正常情况下,一个系统中只能安装一个版本的微软Office套件,这种同时并行安装两个版本的方法是如何实现的?其实这就是Windows 7中一个名为XP Mode的功能。这个功能虽然看起来很神奇,但实际上就是虚拟化技术的一种新的应用方式。

简单来说,该功能需要在Windows 7中安装Windows Virtual PC软件,利用该软件创建虚拟机,给虚拟机中安装老版本Windows系统,并将不兼容Windows 7的应用程序都安装到虚拟机内的老版本Windows中。随后如果虚拟机中安装的是Windows XP,还需要通过Windows Update安装更新程序,使XP可支持RemoteApp,而Windows Vista之后的系统已经直接支持该功能。

RemoteApp的主要用途是将虚拟机内运行的应用程序的界面直接显示到宿主机的系统中,而不需要显示虚拟机的相关界面。例如上图所示的例子中,Word 2007就是运行在虚拟机中,但并不需要打开虚拟机的窗口,就可以直接在宿主机的桌面上看到Word 2007的程序窗口,而且安装到虚拟机中的应用程序快捷方式可以直接出现在宿主机的开始菜单中。这一点就是Windows 7中XP Mode与其他虚拟机软件最大的不同。

Windows XP/Vista也可以安装虚拟机软件,并在其中运行不兼容的应用程序,但这种情况下必须首先启动虚拟机软件,启动虚拟机,随后在虚拟机中启动应用程序,并在虚拟机窗口内使用该应用程序。但在Windows 7中,使用XP Mode技术,虽然一样需要启动虚拟机,但至少虚拟机中运行的程序窗口可以直接显示在宿主机中,这样此类程序实际使用起来,就和普通的应用程序没有太大区别。

而且Windows 7中提供的Windows Virtual PC是微软Virtual PC 2007的升级版,除了具备VPC 2007的所有功能外,还可以挂载USB设备,这样虚拟机内运行的应用程序也将可以直接使用USB设备,例如U盘或打印机。更重要的是,虽然严格来说这样的程序是在不同操作系统之间运行的,但程序之间的交互没有任何问题,我们可以从Word 2007中复制文字并粘贴到Word 2010窗口中。

那么既然就是虚拟化技术,这个功能为什么又要叫做XP Mode?其实这是因为很多不愿意升级到Windows 7的企业依然在使用XP,因为XP与企业内应用程序的兼容性最好。因此为了促使这些企业升级,微软提供了免费授权的Windows XP。从微软网站上下载一个500 MB左右的安装程序,该文件中包含了微软预先配置好的虚拟机磁盘文件,将该程序安装到系统中,就会自动创建一个运行了XP系统的虚拟机。因为这个虚拟机中的XP授权是免费提供的,因此可以有效降低企业的应用成本,同时这个虚拟机可以自动安装,也可以方便用户的使用。但实际上,如果有必要,我们完全可以给虚拟机中安装Windows Vista等系统,并将该功能叫做Vista Mode。

.vhd引导

.vhd是微软虚拟化软件生成的磁盘文件,在老版本Windows中,必须安装微软的虚拟化软件,例如Virtual PC或Hyper-V,才能在虚拟化的平台中加载.vhd文件中的操作系统。但在Windows 7和Windows Server 2008 R2中,除了可以使用虚拟化软件加载外,这些操作系统的引导管理器还可以直接引导.vhd文件中的操作系统。

对于普通用户,这种功能有什么用?可以设想这样的情形:由于各种原因,有些人可能需要使用多个操作系统,例如可能是为了测试自己开发的软件,或者在学习计算机技术需要做实验,或者由于各种原因,平时使用一个系统,但在执行某些任务时需要使用另一个系统。

其实传统的虚拟机软件就可以满足需要,而且只要硬件性能足够强大,还可以同时在虚拟机中运行多个系统,但这样的用法有一个很大的不足:性能。

虽然现在的新CPU已经支持硬件虚拟化技术,并且主流的虚拟机软件也开始为硬件虚拟化技术提供支持,这样的结果是虚拟机中运行的系统和应用程序的性能越来越好。但这一切毕竟都是虚拟出来的,需要在后台执行大量的转换和运算,因此性能的损失是难免的。尤其是,有些特殊的应用可能根本无法在虚拟化的电脑中进行。例如需要真正使用某些物理硬件的时候,或者对性能的损失无法接受的时候。

举例来说,IT专业人员可能经常需要在虚拟机中评估新软件,然而在虚拟化环境中,评估软件的功能比较简单,按照正常方法使用并评测即可,但如果需要评估新软件的性能,又该怎么办?虚拟机本身相比物理机性能就有一定的损失,如何得到客观准确的结果?

其实在Windows 7中就简单了,在遇到上述问题后,直接使用相关虚拟机的.vhd文件引导电脑,随后电脑就会自动使用物理机的真正硬件运行,并可充分使用到所有硬件的完整运算性能。不仅如此,如果有必要,还可以直接使用Windows 7的磁盘管理工具(diskmgmt.msc)创建或挂载.vhd文件(如图 3所示),这样还可以直接对.vhd文件内的虚拟环境进行修改和维护。

06

3,Windows 7可直接支持vhd文件

分享:

发表评论

电子邮件地址不会被公开。 必填项已用*标注

发表评论前,先做个简单的数学题吧: * Time limit is exhausted. Please reload CAPTCHA.