虚拟机是一项变革性技术,其允许计算机程序和应用程序在现有硬件上运行,而无需复制物理系统。虚拟机支持远程和云计算部署,使组织能够最大限度地提高硬件利用率,简化运营,高效扩展本地或云端计算环境。
虚拟机可适应各种计算场景,涵盖整合工作负载、为测试和开发创建安全、隔离的环境等等。它们支持在单台物理机器上运行多个操作系统,优化资源分配并降低基础设施复杂性。与美光一起了解虚拟机的工作原理及其一些关键用例。如需了解美光的内存和存储技术如何为这些严苛环境提升性能,请联系美光的销售支持团队。
什么是虚拟机?
虚拟机的定义:虚拟机 (VM) 是基于软件的物理计算机仿真,可在主机系统内的虚拟化硬件资源上运行其自身的操作系统和应用程序。
每个虚拟机都像一台独立设备一样运行,配有自身的操作系统、应用程序和虚拟化硬件资源,所有这些都在共享物理系统上运行。
虚拟机不是重复建设物理基础设施,而是共享主机系统的底层硬件。每个虚拟机都作为独立“客户机”运行,拥有其自身分配的中央处理器 (CPU)、内存和存储空间。这种隔离机制增强了安全性与稳定性,使多个操作系统能够在同一台物理机器上无干扰地运行。
虚拟机的常见示例是虚拟服务器:即能够模拟物理服务器并允许多个用户远程访问应用程序、文档和系统的软件,而无需直接连接到物理服务器。
虚拟机可为组织带来显著益处。虚拟机支持更多工作负载在现有硬件上运行,从而最大限度地提高了硬件利用率、简化了运营并降低了成本。虚拟机还提供了灵活性。用户和团队可灵活调整其环境,在不对主系统造成风险的情况下测试新软件,并在单台机器上运行多个操作系统。组织可通过部署 VM 软件来更新基础设施,而不用更换或升级物理计算机系统——这既能充分利用现在已有硬件,又提供了一种不那么复杂且具有成本效益的替代方案。
此外,将访问权限和应用程序分割到单一计算机环境的不同区域,有助于增强网络安全并提高访问透明度。在虚拟机内,可监控每个分割区域的使用情况,组织还可分配不同级别的访问权限(根据需要授予或限制权限),以确保仅授权用户才能访问敏感系统。这种分层式资源管理方法不仅可增强安全性,还可清晰了解虚拟环境的使用情况,从而支持合规与运营监督。
虚拟机的工作原理是什么?
虚拟机的工作原理依赖于一种被称为“虚拟化”的流程,即创建可安装到物理计算机硬件上的虚拟技术。
不妨将虚拟机想象成在真实物理计算机内运行的基于软件的计算机。虚拟机无需为每个操作系统或应用程序配备单独的硬件,而是允许多个“虚拟计算机”共享相同的物理资源(如内存、存储空间和处理能力),同时彼此之间保持隔离。
这一实现得益于一种名为虚拟化的技术,该技术在物理硬件与其上运行的软件环境之间创建了一层隔离。虚拟化的核心是虚拟机管理程序,这是一种专门的软件或固件,负责管理硬件资源如何分配给每个虚拟机。虚拟机管理程序允许多个虚拟机在同一台服务器上共存,而不互相干扰。
虚拟机管理程序有两种主要类型:
- 第 1 类虚拟机管理程序(裸机型):直接在物理硬件上运行,通常用于企业和数据中心环境。
- 第 2 类虚拟机管理程序(托管型):运行在现有操作系统之上,通常用于桌面虚拟化或开发环境。
每个虚拟机被称为“客户机”,而运行它的物理计算机则是“主机”。客户机之间以及与主机操作系统相互隔离,这有助于提高安全性和稳定性。开发人员和 IT 团队可对每个虚拟机使用的 CPU、内存和存储资源量进行配置,从而在确保理想性能的同时,不会对主机带来过大负载。
美光的高速动态随机存取存储器 (DRAM) 和固态硬盘 (SSD) 在此过程中发挥着至关重要的作用。它们提供了虚拟机高效运行所需的快速、可靠内存和存储访问,在多个虚拟机同时运行的环境中尤其如此。
虚拟机的发展历史是怎样的?
虚拟机的发展历史可追溯到 20 世纪中期,并且在过去几十年应用范围得到了扩展。
- 20 世纪 60 年代,分时系统与虚拟机的出现:早期的虚拟机概念源于分时系统,例如 IBM 的 CP-40 和 CP/CMS,这些系统允许多个用户共享计算资源。
- 20 世纪 70 年代,Pascal P-码及其日益普及:1973 年,Pascal P-码的推出实现了在无需专用硬件情况下的指令虚拟执行,这为基于语言的虚拟机奠定了基础。IBM 的 VM/370 还将商用 VM 技术引入了大型机。
- 20 世纪 90 年代,商业化与现代发展:20 世纪 90 年代,虚拟化技术取得了重大进展,其中包括 Java 虚拟机 (JVM) 等托管运行时的推出,实现了与平台无关的软件执行。虚拟机更加高效,客户机系统与主机系统之间的协调性也得到了改善。1999 年,VMware 发布了首款广泛应用于 x86 系统的商用虚拟化产品,从而彻底改变了桌面和服务器虚拟化。
- 21 世纪 00 年代以后,云计算与规模扩展:虚拟机已成为现代计算的基础技术,支撑着可扩展的远程基础设施,并推动了全球企业云计算的兴起。
虚拟机的主要类型有哪些?
通常情况下,虚拟机可分为流程虚拟机或系统虚拟机两类:
- 流程虚拟机 (应用程序虚拟机)旨在运行单个应用程序,当应用程序关闭时,虚拟机即告终止。
- 系统虚拟机 (硬件虚拟机)能够模拟完整的操作系统,并独立于用户活动运行。这是最常见的虚拟机类型。
这两种虚拟机类型都依赖于虚拟机管理程序来管理其运行和资源分配。例如,系统虚拟机利用虚拟机管理程序来仿真整个操作系统环境,而流程虚拟机则可利用虚拟机管理程序来隔离和管理单个应用程序。虚拟机管理程序类型(第 1 类或第 2 类)的选择取决于部署环境以及所需的控制或隔离程度。
在这两大类虚拟机下,还包含以下较小的子类别:
- Java 虚拟机,用于执行 Java 字节码。
- Python 虚拟机,用于执行 Python 代码。
- iOS 虚拟机,专为苹果系统而设计。
- Android 虚拟机,专为安卓手机系统而设计。
虚拟机是如何应用的?
虚拟机是一项跨行业的基础性技术,支持从软件开发到企业云基础设施的广泛应用。
软件开发与测试
虚拟机使开发人员能够创建隔离环境,以构建和测试新应用程序。通过模拟不同的硬件和软件配置,虚拟机使团队能够安全地测试软件,而不会影响生产系统,也不会对主操作系统的稳定性产生风险。这种灵活性不仅加快了开发周期,还提升了软件质量。
云计算
虚拟机对现代云计算至关重要。它们为可扩展的远程基础设施服务(例如,基础设施即服务 [IaaS])、软件即服务 [SaaS])提供支持。
虚拟机允许多个虚拟环境在共享物理硬件上运行,从而使组织可能能够在云端高效地部署、管理和扩展应用程序。
远程办公与 VPN 访问
借助虚拟机,用户可以从世界几乎任何地方安全地访问公司系统和敏感数据。虚拟机使运行可能与用户主设备不兼容的应用程序成为可能,并支持通过公司虚拟专用网络 (VPN) 建立安全连接,从而实现灵活高效的远程办公。
运行多个操作系统
虚拟机允许用户在单台物理机上运行多个操作系统(如 Linux、Windows 或其他系统)。对于需要用来支持多样化软件环境或旧有应用程序的开发人员、测试人员和组织而言,这一能力具有不可估量的价值。
网络安全与访问控制
虚拟机提供分段、隔离的环境,可增强安全性、监控能力和访问透明度。组织可监控每个虚拟机内的使用情况,实施细粒度访问控制,并确保仅授权用户才能访问敏感系统,从而增强了整体网络安全态势。
第 1 类虚拟机管理程序直接运行在物理硬件上,因此能提供更出色的性能和安全性。第 2 类虚拟机管理程序运行在主机操作系统之上,因此更易于设置,但通常效率较低。