半虚拟化技术

半虚拟化与全虚拟化的区别:

全虚拟化:guest系统每一次对于硬件的请求,都会由hypervisor(系统管理程序)接管,并转换成hypervisor的代码,由hypervisor负责对最终硬件进行操作。好处是guest系统每一次对于物理硬件的请求都会变为对hypervisor管理的虚拟硬件的请求,很好的隔离了guest系统与物理系统,当物理系统进行升级或者硬件更换时,无需修改guest系统。坏处则是每一指令转化会使得资源消耗过多。

半虚拟化:共享当前系统的硬件驱动,只负责guest系统请求的资源调度。好处是避免了对硬件请求的指令重写,提高了系统性能,有效的利用资源。坏处是每一次硬件系统升级要对guest系统改写。

半虚拟化工作方式:

半虚拟化由domain zero(零域)和hypervisor共同管理,零域负责guest系统的管理,类似于管理员的角色,hypervisor负责与底层硬件交互。

原生式和宿主式:

半虚拟化又分为原生式和宿主式,宿主式最典型的是vmware,vmware运行于一个安装好的操作系统中,并对安装在其上面的其他软件系统进行统一管理,由于宿主操作系统同时可能要运行其他的程序,导致虚拟系统效率不够稳定,优点则是安装方便。原生式比如Xen,由零域对其他guest系统进行管理,由于这种方式不需要一个宿主操作系统,所以原生式与硬件之间的管理层可以更轻薄。原生式类似于安装一个新的操作系统,宿主式类似于安装一个软件。

猜你喜欢

转载自firehoo.iteye.com/blog/1370300