虚拟化概述
什么是虚拟化?
虚拟化是一个广泛的计算术语,用于运行软件,通常是多个操作系统,与单个系统上的其他程序隔离。虚拟化是通过使用管理程序完成的。这是一个软件层或子系统,可以控制硬件,并且可以在单个(通常是物理)机器上运行多个操作系统(称为VM(虚拟机)或guests)。这台装有操作系统的机器被称为HOST。有几种虚拟化方法:
完全虚拟化
完全虚拟化使用未经修改的客户操作系统版本。访客通过管理程序创建的通道来访问主机的CPU。因为guest虚拟机与CPU直接通信,所以这是最快的虚拟化方法。
半虚拟化
半虚拟化使用修改的客户操作系统。访客与管理程序进行通信。虚拟机管理程序将来自guest虚拟机的未修改的调用传递给CPU和其他接口,包括实际的和虚拟的。由于呼叫是通过管理程序路由的,因此此方法比完全虚拟化慢。
软件虚拟化(或仿真)
软件虚拟化使用二进制翻译和其他仿真技术来运行未经修改的操作系统。管理程序将来宾呼叫转换为主机系统可以使用的格式。由于所有的调用都被翻译,所以这个方法比虚拟化要慢。请注意,红帽不支持红帽企业Linux上的软件虚拟化。