种豆资源网

当前位置:首页 > 百科 > 百科综合 / 正文

VMware公司

(2017-12-12 22:25:20) 百科综合

VMware公司

VMware工作站 (VMware Workstation)是VMware公司销售的商业软体产品之一。该工作站软体包含一个用于英特尔x86兼容计算机的虚拟机套装,其允许多个x86虚拟机同时被创建和运行。每个虚拟机实例可以运行其自己的客户机作业系统,如(但不限于)Windows、Linux、BSD变生版本。用简单术语来描述就是,VMware工作站允许一台真实的计算机同时运行数个作业系统。其它VMware产品帮助在多个宿主计算机之间管理或移植VMware虚拟机。

VMware公司目前为EMC公司的全资子公司。
公司类型
上市公司 (NYSE:VMW )
成立时间
1998年
总部地点
美国加州帕罗奥多Hillview大道3401号
邮政编号
94304
服务範围
{{{area_served}}}
描述
运行VMware工作站进程的计算机和作业系统实例被称为宿主机.在一个虚拟机中运行的作业系统实例被称为虚拟机客户。类似仿真器,VMware工作站为客户作业系统提供完全虚拟化的硬体集-例如,客户机只会检测到一个AMD PCnet网路适配器,而和宿主机上真正安装的网路适配器的製造和型号无关。VMware在虚拟环境中将所有设备虚拟化,包括视频适配器、网路适配器、以及硬碟适配器。它还为USB、串列和并行设备提供传递驱动程式(pass-through drivers,指将对这些虚拟设备的访问传递到真实物理设备的驱动程式)。
由于与宿主机的真实硬体无关,所有虚拟机客户使用相同的硬体驱动程式,虚拟机实例是对各种计算机高度可移植的。例如,一个运行中的虚拟机可以被暂停下来,并被拷贝到另外一台作为宿主的真实计算机上,然后从其被暂停的确切位置恢复运行。藉助VMware的VirtualCenter(虚拟机中心)产品中一种称为Vmotion的新功能,甚至可以在移动一个虚拟机时不必将其暂停-就是说现在即使在向不同的宿主机上移植虚拟机时,这些虚拟机仍然可以保持运行。
实现
传统的模拟器,如Bochs,透过调用宿主机上的软体子程式逐条执行每一道客户机的CPU指令,以此模拟客户机的微处理器。这种抽象化的方法,可使宿主机模拟出不同于自身微处理器的环境,让客户机运行。然而这类模拟器运行得非常慢。
一种更有效率的方式是在初次执行客户机指令时动态地重新编译那些机器指令块,以后用到这些指令时直接执行经过翻译的代码。这种方式是由微软的Virtual PC for Mac OS X产品、以及Fabrice Bellard的QEMU产品(不含近期的kqemu附加模组的)所使用的方式。
和Virtual PC for Windows产品及带有kqemu附加模组的QEMU产品一样,VMware工作站使用了一种更加最佳化的方式,在儘可能的情况下直接运行程式代码,在x86中这是执行用户模式和虚拟8086模式的程式代码的情况而言。当不能直接运行程式代码时,这几种软体产品会动态地重写代码,这是在执行核心级别和实模式的程式代码的情况而言。在VMware中,经过翻译的代码是被放入记忆体的空闲区域中的,一般是在地址空间的尾部,这个区域可以随即被保护起来并通过分段机制标记为不可见的。由于这些原因,VMware比仿真器显着地快,能以超过在真实硬体上运行速度的80%的速度运行虚拟的客户作业系统。VMware对在运行高强度计算的应用程式时只有小到3%-5%的系统开销而自豪。
缺点是客户作业系统的指令代码必须和宿主机的CPU兼容。因此不同于仿真器,VMware工作站不能用来在一个英特尔x86处理器上运行Mac/PPC软体。另一个缺点是通常不可能有效率地嵌套使用VMware虚拟机(指在虚拟机客户中运行另一个VMware虚拟机,即以一个虚拟机客户作为宿主机再运行VMware)。最后,儘管VMware虚拟机是运行于用户模式下的,VMware工作站宿主程式本身必须在宿主作业系统下安装多种驱动程式,尤其是为了能动态切换GDT和IDT表。
最后一点说明:经常有人错误地认为象VMware或Virtual PC这类虚拟机产品是替换不良指令或简单地在用户模式下运行核心代码。这两种方式都不能用于x86。替换指令的意思可以这幺理解:假设要执行指令试图读取该指令本身的代码,它会吃惊地发现没有找到预期的内容。因为实际上不可能在允许指令正常执行的同时又保护其代码不被读取,要实现指令替换是複杂的。在用户模式下不加改变地运行代码同样也是不可能的,这是因为在用户模式下,大部分仅读取机器状态的指令不产生异常、也不能正确反映程式的真实状态,此外某些指令的行为会悄悄地有所变化。重写指令总是必需的;必要时会模拟初始位置的当前指令指针,硬编码的断点也特别地会被重新映射。
特点
除了为到网路适配器、CD-ROM读盘机、硬碟驱动器、以及USB设备的访问提供了桥樑外,VMware工作站还提供了模拟某些硬体的能力。例如,能将一个ISO档案作为一张CDROM安装在系统上、也能将.vmdk档案作为硬碟驱动器安装、以及可将网路适配器驱动程式配置为通过宿主计算机使用网路地址转换(NAT)来访问网路,而非使用与宿主机桥接的方式(该方式必须为宿主网路上的每个客户作业系统分配一个IP位址)。
VMware工作站还允许无须将LiveCD烧录到真正的光碟上、也无须重启计算机,而对这些LiveCD进行测试。还可以捕获在VMware工作站下运行的某个作业系统的快照。每个快照可以用来在任何时候将虚拟机回滚到保存的状态。这种多快照功能使VMware工作站成为销售人员演示複杂的软体产品、开发人员建立虚拟开发和测试环境的非常流行的工具。VMware工作站包含有将多个虚拟机指定为编队的能力,编队可以作为一个物体来开机、关机、挂起和恢复-这使VMware工作站在用于测试客户端-伺服器环境时特别有用。
VMware公司新的企业级伺服器和工具产品正在使将旧的生产伺服器移植到虚拟机的做法开始流行,这种做法能几乎不费力地将多箇旧式伺服器集装到一个单个的新宿主计算机中。
问题
较早版本的VMware似乎不能运行较新版本的Linux (在运行于VMware 2.x时,2.4系列的核心好像有问题;2.6系列的核心会导致VMware 3.x报告保护错误)。不过VMware工作站现在已经升级到能支持那些较新的作业系统和核心的5.0版本。但是对最新的2.6.x版本的核心还是必须要打个补丁-即便使用的是VMware工作站5.0版。名字为 vmware-any-any-update9x 的该补丁可免费获得(目前名字的最后部分是update93)。在Google里搜寻一下能得到许多下载地址。
另外,VMware工作站在用于将MAC地址用作唯一识别标记(UID)的环境中时,最好是(通常也是必须)为每个虚拟机手工配置MAC地址以保证每个MAC地址确实是唯一的。这类环境的一个例子是在网路交换机上启用MAC安全机制(例如连线埠绑定)的情况,另一个例子是使用Altiris产品的环境(在配置为将MAC地址作为UID时)。该情况下,可以简单地禁用除被桥接的所有网路/适配器,并编辑每个虚拟机的.vmx档案,将其中"ethernet0.address"改为唯一的MAC地址、以及将"ethernet0.addresstype"改为"static"。同时请确保将"ethernet0.generatedaddress"项整个删除。
参见
用户模式的Linux
Xen
虚拟机比较
Virtual PC
QEMU
外部连结

标 签

搜索
随机推荐

Powered By 种豆资源网||