虚拟化可以用于不同的目的。例如,云计算和容器技术与它配合使用。幸运的是,作为 Windows 的用户,你不必依赖外部的软件。通过 Hyper-V,Windows 已经安装了自己的管理程序。那么这个工具是做什么的呢?
为了使硬件虚拟化,即创建一个没有物理形式的硬件环境,你需要在物理计算机和虚拟机之间有一个中介。这个接口被称为管理程序。物理主机系统可以映射到共享主机硬件(父分区)的多个虚拟客户系统(子分区)。微软已经创建了自己的管理程序 Hyper-V,它包含在Windows 10、11 或 Windows 8 的专业版本中。该软件也被安装在Windows Server中。
Hyper-V 让 Windows 用户有能力启动自己的虚拟机。在这个虚拟机中,带有内存、硬盘空间、处理器功率和其他组件的完整硬件基础设施可以被虚拟化。一个单独的操作系统在此基础上运行,不一定非得是 Windows。例如,在虚拟机中运行一个开源的 Linux 发行版是非常流行的。
虚拟化技术可以在不同的情况下用于不同的需求。Hyper-V 通常被用于测试环境。在这种情况下,虚拟化有两个优势:
私人用户可以使用 Hyper-V,例如,如果他们想使用在他们当前版本的 Windows 下无法运行的软件– 要么是因为该程序需要旧版本的操作系统,要么是因为只支持 Linux。
通过 Hyper-V 的虚拟化,尤其对软件开发人员来说是一个很大的优势。他们创建的任何程序都可以在大量的软件和硬件条件下进行测试。此外,由于虚拟机的自足性,不需要担心有问题的代码会对他们自己的系统造成损害。
Hyper-V 允许 x64 版本的 Windows 承载一个或多个虚拟机,而这些虚拟机又包含一个完全配置的操作系统。这些 “子”系统被当作分区处理。这个术语是从硬盘分区中得知的– Hyper-V 虚拟化的工作方式与此类似。每个虚拟机都是 “父”分区(实际的操作系统)旁边的一个孤立的单元。
各个分区是由管理程序协调的。下属分区可以通过父系统的接口(Hypercall API)来创建和管理。然而,隔离总是被保持。子系统被分配了虚拟硬件资源,但永远不能访问父系统的物理硬件。
为了请求硬件资源,子分区使用 VMBus。这是一个使分区之间进行通信的通道。子系统可以向父系统请求资源,但理论上它们也可以相互通信。
分区运行处理通过 VMBus 运行的请求和响应的服务。主机系统运行虚拟化服务提供商(VSP),下级分区运行虚拟化服务客户端(VSC)。
与其他任何虚拟化技术不同,Hyper-V 的优势在于与 Windows 集成。任何使用微软个人电脑或服务器操作系统的人都可以从这种紧密的整合中受益。Hyper-V 是一个类型 1 的管理程序,这也是只有少数其他技术能提供的东西。这意味着 Hyper-V 是直接基于系统硬件的。另一方面,第 2 类管理程序必须始终通过母操作系统来提供资源。
对于 Windows 用户来说,一个非常明显的优势是与操作系统的紧密联系。这也意味着一个更具成本效益的解决方案,因为 Hyper-V 通常是随 Windows 免费提供的。在功能方面,Hyper-V 可以跟上竞争者的步伐。Hyper-V 的用户可以期待高性能,只要他们只把 Windows 作为一个客户系统来工作。由于管理工作相对简单,即使是初学者也能从 Hyper-V 的虚拟化中受益。
尽管 Hyper-V 在 Windows 下工作得非常好,但该软件在其他操作系统下达到了极限。Hyper-V 的设计不是为了在其他系统上运行,而且可能的客户系统非常有限。除了 Windows 之外,只有少数选定的 Linux 发行版可以在虚拟机中运行。例如,如果你想使用macOS作为客户系统,你必须使用一个额外的产品。不幸的是,当你同时运行多个Linux 系统时,会出现很高的性能损失。
如果你只使用 Windows,Hyper-V 是其他虚拟化解决方案的一个很好的选择。由于该软件通常已经安装在 Windows 上,Hyper-V 也非常适用于小型项目。然而,在处理其他操作系统时,该软件有其弱点。在这种情况下,你需要使用其他软件解决方案,如VMware。尽管 Hyper-V 具有广泛的功能和良好的性能,但它是小型项目的理想选择,但在大型项目中却很困难。