当前位置:首页 > 虚拟化 > 正文

什么是半虚拟化


一、几种常见的计算机虚拟技术它还支持在同一平台上运行多个不同内核和不同类型的操作系统,相当于一台真正的物理机。其最大的缺点是由于需要对硬件进行完全虚拟化,在实际应用中实现效率较低且成本相对昂贵。常见技术平台包括:ParallelsWorkstation、ParallelsDesktopforMac、VirtualBox、VirtualIron、OracleVM、VirtualPC、VirtualServer、Hyper-V、VMwareWorkstation、VMwareServer(以前称为GSXServer)、QEMU、Adeos、Mac-on-Linux、Win4BSD、Win4LinPro和Technology叶格纳夫刀片。半虚拟化技术可以选择性地在某些硬件上进行一些需要的虚拟化,它是全虚拟化和内核级虚拟化之间的折衷方法,因此其各方面的性能基本上处于两者之间。使用半虚拟化技术需要对GuestOS进行一些必要的修改,以使其能够在虚拟平台上正常运行。常见的技术平台有:Xen、UML、TRANGO和KVM。操作系统级虚拟化技术(Operatingsystem-levelvirtualization)是基于操作系统级的虚拟化技术,GuestOS环境和物理机系统共享同一个系统内核,有点类似于隔离各个运行环境。因此,只有具有相同内核的系统才能在其上运行,并且必须对当前VPS中广泛使用的GuestOS进行一些必要的修改。常见的技术平台有:SolarisContainers、OpenVZ、Linux-VServer、AIXWorkloadPartitions、ParallelsVirtuozzoContainers和iCoreVirtualAccounts。硬件辅助虚拟化技术(hardware-auxiliaryvirtualization)通常也称为HVM,使用这种虚拟化技术不需要修改GuestOS。目前集成虚拟化技术支持的硬件平台有:x86(和x86_64)—AMD-V、IntelVT-x、IOMMU、PowerArchitecture、Virtage(Hitachi)、UltraSPARCT1、T2andT2+(Sun)。
支持该硬件平台的虚拟技术软件包括:LinuxKVM、VMwareWorkstation、VMwareFusion、MicrosoftVirtualPC、Xen、ParallelsDesktopforMac、VirtualBox和ParallelsWorkstation。
二、虚拟化和半虚拟化的区别全虚拟化技术使用虚拟机来集成客户操作系统和原始硬件。“协调”是这里的关键词;这是因为VMM用于协调来宾操作系统和硬件之间工作的一些受保护指令必须由Hypervisor(虚拟机管理器)捕获并执行。Hypervisor完全共享底层硬件:全虚拟化比使用Hypervisor共享底层硬件的硬件虚拟化更快,但性能不是裸机,因为Hypervisor需要占用一些资源。完全虚拟化不会对操作系统进行任何修改,其唯一的限制是操作系统可以支持具有基本硬件(例如PowerPC)和一些较旧硬件(例如x86)的旧机器上的虚拟机管理程序。完全虚拟化一些敏感指令需要通过VMM处理来处理(VMM无法设置陷阱),所以虚拟机管理程序必须动态扫描和捕获特权代码来处理该问题。
半虚拟化是一种类似的流行技术。使用全虚拟化Hypervisor(虚拟化管理程序)共享对底层硬件的访问;但由于其客户操作系统不需要重新编译或调试虚拟化代码,因此该操作系统被称为半虚拟化虚拟化(ParavirtualizationVirtualization),通过客户操作系统的共享过程如上所述;半虚拟化需要对来宾操作系统进行一些修改(与虚拟机管理程序合作),这是一个错误。然而,半虚拟化可以同时支持许多不同的操作系统:有一个问题:在半虚拟化环境中;没有修改内核的操作系统无法在VT上运行的虚拟环境中运行。该系统可以称为半虚拟化环境。