按虚拟化程度分类:
全虚拟化(Full Virtualization)

全虚拟化是指虚拟机模拟了完整的底层硬件,包括处理器、物理内存、时钟、外设等,使得为原始硬件设计的操作系统或其它系统软件完全不做任何修改就可以在虚拟机中运行。操作系统与真实硬件之间的交互可以看成是通过一个预先规定的硬件接口进行的。全虚拟化VMM以完整模拟硬件的方式提供全部接口(同时还必须模拟特权指令的执行过程)。

超虚拟化(Paravirtualization)

这是一种修改Guest OS部分访问特权状态的代码以便直接与VMM交'_的技术。在超虚拟化虚拟机中,部分硬件接口以软件的形式提供给客户机操作系统,这可以通过Hypercall(VMM提供给Guest OS的直接调用,与系统调用类似)的方式来提供。

部分虚拟化((Partial Virtualization)

VMM只模拟部分底层硬件,因此客户机操作系统不做修改是无法在虚拟机中运行的,其它程序可能也需要进行修改。在历史上,部分虚拟化是通往全虚拟化道路上的重要里程碑。

操作系统级虚拟化(Operating System Level Virtualiza-tian)

在传统操作系统中,所有用户的进程本质上是在同一个操作系统的实例中运行,因此内核或应用程序的缺陷可能影响到其它进程。操作系统级虚拟化是一种在服务器操作系统中使用的轻量级的虚拟化技术,内核通过创建多个虚拟的操作系统实例(内核和库)来隔离不同的进程,不同实例中的进程完全不了解对方的存在。

按虚拟化的技术应用来分:
服务器虚拟化
存储虚拟化
网络虚拟化
桌面虚拟化

全球排名前五的虚拟化软件公司为:
VMware、微软、思杰、红帽(Red Hat),甲骨文(Oracle)。

VMware Workstation
(VMwareWorkstation)是VMware公司销售的商业软件产品之一。该工作站软件包含一个用于英特尔x86相容电脑的虚拟机套装,其允许用户同时创建和运行多个x86虚拟机。每个虚拟机实例可以运行其自己的客户机操作系统,如(但不限于)Windows、Linux、BSD变生版本。用简单术语来描述就是,VMware工作站允许一台真实的电脑在一个操作系统中同时开启并运行数个操作系统。其它VMware产品帮助在多个宿主电脑之间管理或移植VMware虚拟机。
将工作站和服务器转移到虚拟机环境,可使系统管理简单化、缩减实际的底板面积、并减少对硬件的需求。
主要限制(至2010年10月):
3D 加速功能不支持 Windows XP 客户机。
VMware Player
用于为虚拟机提供宿主服务的免费软件产品VMware Player可运行由其它VMware产品产生的客户虚拟机,同时也可以自行创建新的虚拟机。
VMware的官方网站提供了多个经过预先配置的操作系统和应用程序的免费虚拟盘映像,这之中有不少是社会募捐的。也存在着可用来创建虚拟机,以及对VMware虚拟硬盘和软盘映像文件进行挂装、操作及转换的免费工具,因此VMware Player程序的用户实际上可以无须付费而创建、运行和维护虚拟机(即使是用于商业目的)。
VMware Fusion
是VMware面向苹果电脑推出的一款虚拟机软件。
VMware Server
在2006年2月6日VMware发布了VMware Server产品的1.0版本,取代原先的VMware GSX Server。VMware服务器可以创建、编辑、运行虚拟机。除了具有可以运行由其它VMware产品创建的虚拟机的功能外,它还可运行由微软Virtual PC产品创建的虚拟机。
VMware国际公司不正式支持运行于Windows XP或专业版Windows 2000上的VMware服务器产品,这不同于VMware工作站产品。然而,已有用户报告了在专业版Windows XP下成功安装并提供VMware服务器功能的例子(但有个别限制要求)。VMware国际公司提供了一个受支持的宿主操作系统的清单。
在2010年1月,VMware宣布2011年6月30日结束对VMware Server的支持。
VMware ESXi 服务器
Vmware ESXi Server是删减部份ESX Server功能之后提供的免费版本。
VMware vSphere
VMware vSphere,原称为VMware Infrastructure,是一整套虚拟化应用产品,它包含VMware ESX Server 4、VMware Virtual Center 4.0、最高支持8路的虚拟对称多处理器(Virtual SMP)和VMotion,以及例如VMware HA、VMware DRS和VMware统一备份服务等分布式服务。 VMware国际公司在2009年4月发布了VMware vSphere 4。该套装提供六个档次的组合方案

Hyper-V是微软的一款虚拟化产品,是微软第一个采用类似Vmware和Citrix开源Xen一样的基于hypervisor的技术。这也意味着微软会更加直接地与市场先行者VMware展开竞争,但竞争的方式会有所不同。

思杰(Citrix)是一家老牌美国企业,该企业成立于1989年,是一家纳斯达克上市公司,是远程接入网领域专业产品提供商,它的业务遍布全球。


Xen和KVm是linux下的虚拟技术

kernel-based Virtual Machine的简称,是一个开源的系统虚拟化模块,自Linux 2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其核心源码很少。KVM目前已成为学术界的主流VMM之一。


RHEV,即Red Hat Enterprise virtualization的缩写,中文全称红帽企业虚拟化。RHEV是红帽公司功能强大且全面的服务器虚拟化平台。


Oracle VM以开源软件Xen管理程序为基础,是甲骨文的x86虚拟化软件,可运行其它的甲骨文软件产品。这个软件的代码库来自于甲骨文在2009年收购的Virtual Iron公司。甲骨文为在Oracle VM上运行PeopleSoft等其它甲骨文企业软件提供了90个模板。用户还可以把Oracle VM用作基于Linux的单独的虚拟化管理器,替代VMware的vSphere等产品。


Linux虚拟化技术解决方案

Linux-VServer(操作系统级虚拟化)
Xen(超虚拟化)。
VMware(完全虚拟化)。
KVM(内核虚拟机)

Intel vt或AMD-v
linux系统查看是否支持虚拟化
查看CPU对虚拟化的支持程度:
Intel和AMD的半虚拟化支持标识 - PAE
# cat /proc/cpuinfo | grep flags
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss nx constant_tsc pni ssse3

Intel全虚拟化支持标识 - VMX
# cat /proc/cpuinfo | grep flags
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc up pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm

AMD全虚拟化支持标识 - SVM
# cat /proc/cpuinfo | grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt rdtscp lm 3dnowext 3dnow pni cx16 lahf_lm cmp_legacy svm extapic cr8legacy 3dnowprefetch ts fid vid ttp tm stc 100mhzsteps


XEN的运行环境:Domain-0与Domain-U
Domain-0即虚拟母机或称为宿主机,与Linux主机为同一系统,以XEN的Linux内核启动的主机,负责管理和控制客户机。
Domain-U即虚拟客户机或称VPS,在Domain-0上可以建立多个虚拟客户机。
Domain-0与Domain-U的区别就是Domain-0是虚拟机,Domain-U是虚拟机上的操作系统。用过Windows上VMWare的可以把Domain-0理解为VMWare软件,Domain-U则是运行在VMWare上的操作系统。

XEN的运行方式:
XEN分成多个层级 (layer) 执行。它将Linux的核心修改后,再使用修改过的核心开机,而开机后先载入XEN的监控器 (Hypervisor) , 并且启动第一个操作系统,称为domain-0。在Xen上面所谓的一个domain就是指一个虚拟机。

Domain-0之所以要先被载入是因为Domain-0含有其他虚拟机启动所必须的控制指令,并且domain-0也是控制虚拟装置的重要主控系 统。在domain-0上最重要的就是一个xend的常住进程,其他的domain都是由这个xend来管理的。至於命名方面,除了domain-0之外 的其他虚拟机就依序被称为domain-1, domain-2等等, 我们统称为domain-U。

Domain-0是很重要的,因为它直接控制Xen的监控器(Hypervisor),而且掌握了真实的Linux驱动程序 (drivers)。而其他的虚拟机(domain-U)则是透过Xen监控器来与真实的硬件以及domain-0进行交互。为了让domain-0能够 与Xen结合,我们必须要修改domain-0的核心才能顺利运行。并且需要使用domain-0的核心来开机才可以。domain-0是所有虚拟机的基 础,所以它可以尽量简洁,其他的个别服务则可以放置到不同的domain中。

xend可以管理domain-0与其他domain之间的启动与交互,提供一个终端控制 (console) 界面来让 domain-0 登入其他的 domain。

以上均来自网友和自己总结~~