电脑技术学习

看图学习VMWare以及常见问题答疑(FAQ)(4)

dn001
(三) VMWare的一些基本概念

VMWare需要一个操作系统来作最基本的平台,其它系统在它上面运行。作平台的这个操作系统叫HOST OS,为了叙述方便,我们称为“主系统”;在主系统上运行的其它系统都叫GUEST OS,“子系统”或“客户系统”。由于HOST OS必须要稳定,并有独立应用程序内存空间的功能,所以目前只支持WinNT/2000/Linux作主系统,WIN9X没有当HOST OS的资格。

前面提到VMWare“变态”,很大程度上是指它对系统的要求高。除了要给主系统相当充裕的内存/硬盘空间外,你还需要为每个子系统准备它们正常运行需要的内存数目。举个例子,WIN2000本身要想比较爽的运行,128M是少不了的。同时,如果你还想运行一个虚拟WIN98,至少要给他提供个64M左右吧。这样,内存需求就达到192M。实际上,加上VMWare本身的开销,在256M以下的机器上运行VMWare有时显得很紧张。如果VMWare对你真正有用的话,你会理解到无论如何加内存比再买台机器联网要便宜得多。当然,我的估计不一定正确,跟各人的具体情况有关系。

下面来讲讲硬件模拟的问题。

既然VM模拟了一台真实的机器出来,我们就必然会问,这台机器用的硬件和我真正的电脑硬件是什么关系?让我们用声卡网卡为例,来看一下这个图:

不管你真正的硬件是什么牌子,什么型号,在虚拟机中一律被模拟成一种兼容性最好的大路货。以声卡为例,我的声卡是ESS SOLO-1,但在虚拟机中一律模拟为Creative Sound Blaster/AWE-32,因为这种卡兼容性好,几乎所有操作系统都能自行识别并驱动。至于虚拟机中的声音指令如何通过真实的声卡和音箱来发声,这一系列转换就由VMWare来完成。

网卡:原理同声卡。区别是虚拟网卡还可以用来在GUEST OS和HOST OS之间通讯,建立标准的TCP/IP或NETBEUI桥梁。在虚拟机中网卡都是一种叫AMD PCNet AM79C970A的PCI 10/100网卡。这个卡很大众化,WIN9X/NT/2000/Linux都可以自己识别并驱动。如果你需要在虚拟机中运行DOS或WIN31,由于这两个系统无法识别此网卡,你可以从AMD的网站下载此型号网卡的驱动程序来驱动。

显卡:刚装好的虚拟WIN98和LINUX/X-WINDOW,只能以标准VGA/16色方式运行。实际上,VMWare把显卡模拟成了一种叫“VMWARE SVGA (FIFO)”的型号,并自带了这种显卡的驱动程序,只要你装上它,就能让虚拟系统的分辨率和颜色数增加。具体安装方法后述。

驱动器:软驱和光驱的虚拟比较简单,基本上就是和主系统共用,一张盘放进去,大家都能读。硬盘问题稍微复杂一些。虚拟机和我们标准的IDE支持一样,提供了四个IDE设备的接口,分别用IDE0-0,IDE0-1,IDE1-0,IDE1-1表示。第一个数字表示PRIMARY或SECONDARY IDE通道,第二个数字表示主/从设备。你可以在设置中为每个设备选择来源。

对硬盘,IDE设备有VIRTUAL DISK和EXISTING PARTITION两种方式。当使用第一种方式时,实际上是在真正的硬盘上建立一个大文件,用来作为虚拟机的整个硬盘。你在虚拟机中的任何操作(包括FDISK, FORMAT, PMAGIC等)实际上都在这个大文件中进行,不会影响真正系统的数据。这种方法的好处是安全,完全和主系统隔离开,不用担心数据问题。坏处是虚拟机刚建好时就完全是台新机器,需要花时间分区,格式化,激活,装系统(还要找光盘或软盘来启动)。如果采用第二种方式(EXISTING PARTITION),那就是把真实的分区开放给虚拟机使用。好处是已有的系统可以直接运行,坏处是如果不小心可能会影响硬盘上的有用数据,另外一个问题就是已有的WIN98在虚拟机中运行和常规方式运行时,有不同的硬件集(常规方式运行时,用的是你真正的硬件,在VMWare中运行时,相当于用的全套VM牌硬件),会在启动的时候花很长的时间来“找到新硬件”。至于有朋友希望能两种方式混用,比如IDE0-0是隔离的虚拟盘,IDE0-1是真实硬盘的部分分区,这种情况我没试过,大家自己小心测试。

串口和并口的模拟:这个不太顺手,感觉是空的串口就可以模拟给VM用,连了东西(UPS,MODEM等)就会在虚拟机启动时告诉你COM口不可用。我没太注意这个问题,因为我虽然无法将COM1以及其上的MODEM模拟出来,但不要忘记GUEST OS和HOST OS是可以连成一个标准TCP/IP网络的,所以可以用WIN2000的“连接共享”解决上网问题。至于并口,我没有打印机,没试。不过,就算不能模拟给VM用,也可以通过网络打印的方式解决。