Bare-Metal hupervisors(一种虚拟化)利用 CPU 功能给来宾操作系统一种印象,即它们是计算机上唯一的操作系统。他们必须虚拟化大部分设备访问,因此来宾不会引起问题。主要优点是速度,它非常快(通常)。
通过二进制翻译进行虚拟化本质上是一个模拟器。它是在另一个操作系统中运行的程序,它向您显示它对来宾的“分析”结果。例如,不是运行加 1 + 2 的代码(并让 CPU 计算出答案是 3),而是具有评估代码的算法,确定它正在添加两个数字,找到这些数字,将它们相加,并将结果呈现给您。如您所见,这是一个更加复杂的过程。主要优点是来宾的 CPU 不必与主机的 CPU 相同。
裸机管理程序通常被认为类似于 VMWare 的 ESX(i) 工具。你有一个只处理虚拟化的服务器;在后台运行虚拟化引擎时,您不能坐在控制台和网络浏览器上。它是用于虚拟化 PC 环境的专用服务器,通常是经过修改的准系统 Windows 内核(用于 Microsoft 的产品)或经过修改的专用 Linux 发行版(VMWare、Citrix 等),专门用于运行他们的产品包。
裸机管理程序(例如 VMWare ESXi)是直接在硬件上运行的管理程序,中间没有操作系统,例如在 PC 或 Mac 上运行 VMWare Server/Fusion 或工作站然后运行另一个操作系统时在虚拟化中。在我看来,完全虚拟化意味着对作为来宾运行的操作系统可用的整个硬件进行虚拟化,而不是像 VM 具有专用磁盘或 NIC 时那样直接将命令传递给硬件。取决于您的课程主题,您应该包括硬件中的虚拟化,这是由 IBM 大型机完成的,或者通过 Intel VT 或 AMD-V 进行一些小范围的扩展。
Bare-Metal hupervisors(一种虚拟化)利用 CPU 功能给来宾操作系统一种印象,即它们是计算机上唯一的操作系统。他们必须虚拟化大部分设备访问,因此来宾不会引起问题。主要优点是速度,它非常快(通常)。
通过二进制翻译进行虚拟化本质上是一个模拟器。它是在另一个操作系统中运行的程序,它向您显示它对来宾的“分析”结果。例如,不是运行加 1 + 2 的代码(并让 CPU 计算出答案是 3),而是具有评估代码的算法,确定它正在添加两个数字,找到这些数字,将它们相加,并将结果呈现给您。如您所见,这是一个更加复杂的过程。主要优点是来宾的 CPU 不必与主机的 CPU 相同。
我不确定您在哪里看到带有二进制转换的完全虚拟化;例子?
裸机管理程序通常被认为类似于 VMWare 的 ESX(i) 工具。你有一个只处理虚拟化的服务器;在后台运行虚拟化引擎时,您不能坐在控制台和网络浏览器上。它是用于虚拟化 PC 环境的专用服务器,通常是经过修改的准系统 Windows 内核(用于 Microsoft 的产品)或经过修改的专用 Linux 发行版(VMWare、Citrix 等),专门用于运行他们的产品包。
裸机源于您根本不需要安装多用户操作系统或进行太多配置。您购买服务器,放入一张 CD,十分钟后,您就可以开始配置虚拟机了。它实际上并不是为您设计的,除了创建虚拟机之外,您还可以做任何事情。链接中的替代方法是让您将管理程序作为托管应用程序运行,通过系统调用与您安装的操作系统共享对硬件的访问。
二进制翻译听起来像Mac 上的Rosetta,或者像 Java 或 .NET 字节码翻译这样的虚拟机。Rosetta 采用非本机代码并将其转换为本机版本以在不同的硬件平台上运行以获得更好的性能,而不是在每个系统调用进入时对其进行转换。对于 Mac,它采用 PowerPC 代码并让它在 Intel 上运行处理器。
裸机管理程序(例如 VMWare ESXi)是直接在硬件上运行的管理程序,中间没有操作系统,例如在 PC 或 Mac 上运行 VMWare Server/Fusion 或工作站然后运行另一个操作系统时在虚拟化中。在我看来,完全虚拟化意味着对作为来宾运行的操作系统可用的整个硬件进行虚拟化,而不是像 VM 具有专用磁盘或 NIC 时那样直接将命令传递给硬件。取决于您的课程主题,您应该包括硬件中的虚拟化,这是由 IBM 大型机完成的,或者通过 Intel VT 或 AMD-V 进行一些小范围的扩展。