虚拟机(VM)是一个模拟版的物理计算机,它在虚拟环境中模拟各种功能并分配资源。
简言之,你可以在你当前的操作系统中运行另一个操作系统,就像运行媒体播放器或网络浏览器一样。
你可以在 VM 中执行与裸机(例如你的笔记本电脑或个人电脑)相同的操作,例如连接到网络、下载软件、更新操作系统等等。
当然,根据使用场景,VM 的体验可能会与实体计算机有所不同。
让我们来探索虚拟机,它们的应用场景,以及它们的工作原理。
虚拟机:起源
虚拟机是最重要的基于软件的创新之一。它的起源可以追溯到 1966 年的 IBM CP-40 和 CP-67 虚拟机操作系统,那时候人们在研究和测试虚拟内存和资源的概念。
快进到我们发表此文的 2023 年,虚拟机已经无处不在,涵盖从个人电脑,到大型企业,再到小型企业。每个人以某种或其他方式都在使用虚拟机。
考虑到所有这些,显然,虚拟机非常有用。但是,它是如何工作的,我们具体用它来做什么?
裸机 = 实体的物理电脑,例如你的 PC 或笔记本电脑
宿主操作系统 = 安装在你实体电脑上的操作系统
客户操作系统 = 在虚拟机内运行的操作系统
虚拟机(VM)= 是虚拟化应用的通用术语
虚拟机如何运作
理解虚拟化的概念会有助于你弄清楚虚拟机是如何运作的。
回顾我们在一篇文章中的描述:
“虚拟化为你提供了计算机硬件的抽象概念,以便你创建虚拟机(VM)、网络、存储等。”
虚拟化允许用户在虚拟环境中利用物理系统的资源。这使得一个进程可以单独地使用资源,而不会影响物理计算机。
而虚拟机就是运用这一能力的过程,在此你会得到以虚拟磁盘、内存,及其他配置文件形式的虚拟资源,让你能在其上运行操作系统。
你或许已经熟悉一些能帮助你创建这些虚拟机的 专为 Linux 的虚拟化软件。
为了详细展示虚拟机和物理计算机之间的技术差异,这里提供一张图帮助你理解:
没有图没有图,图片服务器罢工了,苏苏传不了图
我们为什么需要使用虚拟机?
虚拟机已经成为一种多功能的概念,对于几乎每一个小任务都十分实用,这也是你应该 在虚拟机中运行 Linux 的其中一个理由。
不仅对个人用户有帮助,虚拟机在云计算的领域中也起着重要的作用,而云计算是构成互联网必不可少的一部分。
下面是虚拟机能够帮助你完成的一些任务:
软件测试
操作系统测试
为临时的网络浏览会话增强你的在线隐私
在不影响物理计算机的情况下进行网络安全研究
利用虚拟机作为服务器,使同一硬件上可以托管更多的虚拟机,(从而让硬件资源使用更加高效)
各种开发活动,拥有了更强大的迁移、复制等功能
利用虚拟机在云中复制系统
因此,虚拟机的隔离能力使我们能采用它进行测试和开发,也使其成为服务器可扩展性和灵活性的核心。