今天给各位分享虚拟机的知识,其中也会对虚拟机进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文导读目录:

1、虚拟机

2、一文带你了解虚拟机的全部

3、什么是虚拟机? | Linux 中国

  系统虚拟机和程序虚拟机都可以追溯到20世纪60年代,并且仍然是积极发展的领域。   系统虚拟机起源于分时系统,特别是在兼容分时系统中实现的。分时系统允许多个用户同时使用一台计算机:每个程序看起来都可以完全访问机器,但是一次只执行一个程序,系统在时间片上的程序之间切换,每次都保存和恢复状态。这演变成虚拟机,特别是由IBM的研究系统:使用部分虚拟化的M44/44X系统;和使用完全虚拟化的CP-40和SIMMON系统,是虚拟机管理程序的早期例子。第一个广泛使用的虚拟机体系结构是CP-67/CMS。一个重要的区别是在一个主机系统上使用多个虚拟机进行分时(如M44/44X和CP-40),以及在一个主机系统上使用一个虚拟机进行原型制作(如SIMMON)。为了兼容性而对早期系统进行硬件仿真的仿真器可以追溯到1963年的IBM System/360,而软件仿真(当时称为“仿真”)在此之前就已出现。   程序虚拟机最初是作为中间语言的抽象平台出现的,中间语言被编译器用作程序的中间表示;早期的例子可以追溯到1966年左右。1966年初的一个例子是O-code machine,一个执行由BCPL编译器前端发出的O-code(目标代码)的虚拟机。这种抽象允许编译器通过实现一个新的后端来轻松移植到一个新的体系结构中,该后端采用现有的目标代码并将其编译成底层物理机器的机器代码。欧拉语言使用了类似的设计,中间语言命名为P(可移植)。 帕斯卡在1970年左右推广了这一技术,特别是在Pascal-P系统(1973年)和Pascal-S编译器(1975年)中,在这两个系统中,Pascal-P被称为P-code,由此产生的机器称为P-code机器。这很有影响,从这个意义上来说,虚拟机通常被称为p-code机。Pascal p-code除了是一种中间语言外,还由实现虚拟机的解释器直接执行,特别是在UCSD Pascal(1978)中;这影响了后来的解释器,尤其是Java虚拟机。另一个早期的例子是SNOBOL 4(1967),它是用SNBOL实现语言(SIL)编写的,SIL是一种虚拟机的汇编语言,然后通过宏汇编程序将其传送给它们的本地汇编程序,从而将目标指向物理机。 然而,宏从此不再受欢迎,所以这种方法的影响力就变小了。进程虚拟机是实现早期微型计算机软件(包括Tiny BASIC和冒险游戏)的一种流行方法,从Pyramid 2000这样的一次性实现到Infocom z-machine这样的通用引擎,格雷厄姆·纳尔逊(Graham Nelson)认为这是“有史以来最便携的虚拟机”。   Smaltalk-80的实现取得了重大进展,特别是Deutsch/Schiffmann实现它将准实时编译作为一种使用程序虚拟机的实现方法向前推进。后来引人注目的Smalltalk虚拟机有VisualWorks、Squeak虚拟机,和 Strongtalk。一个产生了大量虚拟机创新的相关语言是自我编程语言,它开创了自适应优化和分代垃圾收集。1999年,这些技术在HotSpot Java虚拟机中被证明是商业上的成功。其他创新包括基于寄存器的虚拟机,相比于更适合编程语言的基于堆栈的虚拟机能够更好地匹配底层硬件;1995年,基于寄存器的虚拟机由Dis虚拟机为Limbo语言开创。OpenJ9是OpenJDK中HotSpot JVM的替代方案,是一个开源eclipse项目,与HotSpot相比,它具有更好的启动性能和更少的资源消耗。  今天的许多前沿技术,如云计算、边缘计算和微服务,都源于虚拟机的概念——将操作系统和软件实例从底层物理计算机中分离出来。   什么是虚拟机?   虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。在虚拟机中,一台或多台客户机可以运行在一台主机上。   虚拟机的起源可以追溯到20世纪60年代早期。每个虚拟机都有自己的操作系统,独立于其他虚拟机,即使它们位于同一物理主机上。虚拟机通常运行在服务器上,但也可以运行在桌面系统上,甚至是嵌入式平台上。多个虚拟机可以共享一个物理主机的资源,包括 CPU 周期、网络带宽和内存。   虚拟机在过去的20年里获得了很大的发展,企业通过服务器虚拟化可以更有效地利用其物理服务器的计算能力,减少物理服务器的数量并节省数据中心的空间。   虚拟机如何工作?   一般来说,有两种类型的虚拟机:程序虚拟机(将单个程序分开)和系统虚拟机(将操作系统和应用程序与物理计算机完全分离)。程序虚拟机的例子包括 Java 虚拟机、.NET Framework 和 Parrot 虚拟机。   系统虚拟机依赖管理程序(hypervisor)作为中间人,提供软件对硬件资源的访问。hypervisor模拟计算机的 CPU、内存、硬盘、网络和其他硬件资源,创建一个资源池,可以根据各个虚拟机的特定需求将资源分配给它们。Hypervisor 可以支持多个相互隔离的虚拟硬件平台,使虚拟机能够在同一物理主机上运行 Linux 和 Windows Server 操作系统。   该领域的知名企业包括 VMware (ESX/ESXi)、Intel/Linux Foundation (Xen)、Oracle(适用于 SPARC 的 MV 服务器和适用于 x86 的 Oracle VM 服务器)和微软(Hyper-V)。   台式计算机系统也可以使用虚拟机。例如Mac 用户在自己的Mac上运行虚拟Windows系统。   管理程序有哪两种类型?   管理程序负责管理资源,并将资源分配给虚拟机使用。它还可以根据管理程序和虚拟机的配置方式来调度和调整资源的分配方式,并且可以根据需求波动重新分配资源。大多数虚拟机管理程序可分为以下两类:   Type1:裸机管理程序直接在物理主机上运行,并且可以直接访问硬件。这类管理程序通常在服务器上运行,通常比 2 类管理程序更高效、性能更好,非常适合服务器、桌面和应用程序虚拟化。这类管理程序包括 Microsoft Hyper-V 和 VMware ESXi。   Type2:有时称为托管管理程序,这类管理程序安装在主机操作系统上,负责管理对硬件资源的调用,通常部署在最终用户系统上。这类管理程序包括 VMware Workstation 和 Oracle VirtualBox。   虚拟机有什么优势?   由于软件与物理主机分离,用户可以在单个硬件上运行多个操作系统,从而节省企业的时间、管理成本和物理空间。虚拟机还可以支持旧版应用程序,从而减少或消除将旧应用迁移到更新或不同操作系统的需求和成本。   此外,开发人员可以使用虚拟机在安全的沙盒环境中测试应用程序。   开发人员想知道他们的应用程序是否能在新的操作系统上运行,可以利用虚拟机来测试他们的软件,而不必提前购买新的硬件和操作系统。   这也有助于隔离恶意软件,由于虚拟机内的软件无法篡改主机,恶意软件无法传播。   虚拟机的缺点是什么?   虚拟机同样也存在一些缺点。在一台物理主机上运行多个虚拟机可能会导致性能不稳定,尤其是在不满足特定应用程序的基础架构要求的情况下。这也使它们在很多情况下比物理计算机效率低。   此外,如果物理服务器崩溃,在其上运行的所有应用程序都会崩溃。   还有哪些其他形式的虚拟化?   虚拟机在服务器虚拟化方面的成功促使虚拟化应用到了很多其他领域,包括存储、网络和桌面。   在网络虚拟化方面的探索包括NaaS(网络即服务)和NFV(网络功能虚拟化),通过商用服务器代替专用网络设备,以实现更灵活和可扩展的服务。   这与SDN(软件定义网络)略有不同,SDN是将网络控制平面与转发平面分开,以实现更自动化的网络资源分配和基于策略的网络资源管理。   VNF(虚拟网络功能)是可以在 NFV 环境中运行的基于软件的服务,包括路由、防火墙、负载平衡、广域网加速和加密等。   虚拟机和容器   虚拟机的增长促进了容器等技术的进一步发展,使这一概念又向前迈进了一步。容器可以对单个应用程序及其依赖项进行虚拟化。与虚拟机相比,容器的开销要少得多,只包含二进制文件、库和应用程序。   虽然有些人认为容器的开发可能会扼杀虚拟机,但虚拟机有足够的能力和优势来推动技术向前发展。例如,在同时运行多个应用程序或在旧操作系统上运行传统应用程序时,虚拟机仍然发挥很大作用。   此外,还有人认为容器不如虚拟机管理程序安全,因为容器只有一个应用程序共享的操作系统,而虚拟机可以隔离应用程序和操作系统。   IDC 软件定义计算部门的研究经理 Gary Chen 在IDC的《2019-2022年全球虚拟机软件预测》中写道:“虚拟机软件市场非常有弹性,并将在未来五年继续积极增长,尽管该市场已经非常成熟并接近饱和。”   虚拟机、5G 和边缘计算   虚拟机被视为 5G 和边缘计算等新技术的一部分。例如,微软、VMware 和 Citrix 等虚拟桌面基础架构 (VDI) 供应商正在寻找将其 VDI 系统扩展到居家办公的方式,作为疫情后混合办公方式的补充。   卡内基梅隆大学的计算机科学教授Mahadev Satyanarayanan说:“使用VDI,你需要极低的延迟,因为你基本上是把你的键盘敲击和鼠标移动发送到远程桌面。”2009年,Satyanarayanan写了一篇文章,介绍了如何利用基于虚拟机的云为互联网边缘的移动设备提供更好的处理能力,这促进了边缘计算的发展。   在 5G 无线领域,网络切片过程使用SDN和 NFV 技术来帮助将网络功能安装到虚拟服务器上的虚拟机上,以提供曾经只能在专有硬件上运行的服务。   就像今天使用的许多其他技术一样,如果没有几十年前引入的原始虚拟机的概念,这些新兴的创新就不会得到发展。  这是终端用户需要知道的所有关于虚拟机的信息,包括它的工作方式及其必要性。来源:https://linux.cn/article-16153-1.html作者:Ankush Das译者:ChatGPT   (本文字数:3017,阅读时长大约:5 分钟)   虚拟机(VM)是一个模拟版的物理计算机,它在虚拟环境中模拟各种功能并分配资源。   简言之,你可以在你当前的操作系统中运行另一个操作系统,就像运行媒体播放器或网络浏览器一样。在 Manjaro Linux 里 VirtualBox 中运行 Windows 10   你可以在 VM 中执行与裸机(例如你的笔记本电脑或个人电脑)相同的操作,例如连接到网络、下载软件、更新操作系统等等。   当然,根据使用场景,VM 的体验可能会与实体计算机有所不同。   让我们来探索虚拟机,它们的应用场景,以及它们的工作原理。   虚拟机是最重要的基于软件的创新之一。它的起源可以追溯到 1966 年的 IBM CP-40 和 CP-67 虚拟机操作系统,那时候人们在研究和测试虚拟内存和资源的概念。   快进到我们发表此文的 2023 年,虚拟机已经无处不在,涵盖从个人电脑,到大型企业,再到小型企业。每个人以某种或其他方式都在使用虚拟机。   考虑到所有这些,显然,虚拟机非常有用。但是,它是如何工作的,我们具体用它来做什么?裸机 = 实体的物理电脑,例如你的 PC 或笔记本电脑宿主操作系统 = 安装在你实体电脑上的操作系统客户操作系统 = 在虚拟机内运行的操作系统虚拟机(VM)= 是虚拟化应用的通用术语   理解虚拟化的概念会有助于你弄清楚虚拟机是如何运作的。   回顾我们在一篇文章中的描述:“虚拟化为你提供了计算机硬件的抽象概念,以便你创建虚拟机(VM)、网络、存储等。”   虚拟化允许用户在虚拟环境中利用物理系统的资源。这使得一个进程可以单独地使用资源,而不会影响物理计算机。   而虚拟机就是运用这一能力的过程,在此你会得到以虚拟磁盘、内存,及其他配置文件形式的虚拟资源,让你能在其上运行操作系统。   你或许已经熟悉一些能帮助你创建这些虚拟机的 专为 Linux 的虚拟化软件。   为了详细展示虚拟机和物理计算机之间的技术差异,这里提供一张图帮助你理解:   虚拟机已经成为一种多功能的概念,对于几乎每一个小任务都十分实用,这也是你应该 在虚拟机中运行 Linux 的其中一个理由。   不仅对个人用户有帮助,虚拟机在云计算的领域中也起着重要的作用,而云计算是构成互联网必不可少的一部分。   下面是虚拟机能够帮助你完成的一些任务:软件测试操作系统测试为临时的网络浏览会话增强你的在线隐私在不影响物理计算机的情况下进行网络安全研究利用虚拟机作为服务器,使同一硬件上可以托管更多的虚拟机,(从而让硬件资源使用更加高效)各种开发活动,拥有了更强大的迁移、复制等功能利用虚拟机在云中复制系统   因此,虚拟机的隔离能力使我们能采用它进行测试和开发,也使其成为服务器可扩展性和灵活性的核心。   建议阅读 在虚拟机中运行 Linux 的十大原因   无论你是学生、专业人员,还是企业,你都会发现虚拟机在某个时间点会发挥出重要的作用。   当你创建一个虚拟机在其中运行另一个操作系统时,你会为它分配一些系统资源,主要包括:处理器:只有当在虚拟机中运行操作系统时才消耗内存:只有当在虚拟机中运行操作系统时才消耗磁盘空间:创建虚拟机时预留,无论虚拟机是否运行,都会占据一定的空间。   有些人认为处理器和内存会一直被虚拟机占用,这并不正确。它们只在虚拟机运行操作系统时才会被使用。   然而,无论虚拟机是否在运行,磁盘空间始终会被占用。   如果你对能够帮助创建虚拟机的虚拟化概念感兴趣,那么我将列举并简要解释所有的不同类型。   管理程序(Hypervisor) 管理着硬件,并将系统资源从虚拟环境中隔离出来。它在技术上被标记为 “虚拟机监视器(Virtual Machine Monitor)(VMM)”。   而管理程序就是那个能让我们创建和运行虚拟机的软件。   管理程序有两种类型:一级管理程序 :它直接连接到物理机,用于管理虚拟机的资源。一个很好的例子就是 KVM,它直接集成在 Linux 系统里。二级管理程序 :它存在于操作系统上,在操作系统上运行,让你能够管理虚拟机资源等等。例如 VirtualBox。   虽然管理程序使虚拟化成为可能,但是各种虚拟化类型则能使你在使用虚拟机时带来更多便利和功能。   一些相关的类型包括:存储虚拟化 :这能通过将可用的磁盘空间划分为小块,以被虚拟机使用,从而创建虚拟磁盘。网络虚拟化 :允许物理网络连接通过虚拟网络(或者适配器)路由到虚拟机。桌面虚拟化 :通过该方式,你可以同时向多台物理设备部署多个虚拟桌面环境。可以从一个中心点配置和管理所有虚拟桌面。   为了深入了解所有的技术细节,我建议你查阅 AWS 关于虚拟化的文档。   虽然你已经通过其使用案例了解到了一些虚拟机带给你的好处,但是我还是想再补充一些你需要知道的要点:虚拟机能够让你充分地利用硬件资源,而不影响宿主机有了虚拟机,你可以自由地进行测试或者做任何你想做的事情。无论是一个极老的应用,或是一个有风险的软件,你都可以完全依赖虚拟机来完成一切,并且不会对你宿主机产生影响你可以在一个地方运行多个操作系统,而不需要面对双启动或增加额外的物理驱动器来使用其它操作系统的麻烦。这样可以帮你节省成本,时间,同时避免管理的困扰有了虚拟机,你可以在不需增加任何硬件的情况下快速地克隆你的配置。   虽然虚拟机在许多场景中都非常有帮助,但是它也有可能带来什么不利影响吗?   嗯,实际上,使用虚拟机并没有直接的缺点,但是你仍然需要对一些虚拟机可能带来的影响持谨慎态度:尽管虚拟机被认为能够有效地利用资源,但是如果你不监控它们或者粗心大意地运行多个虚拟机,它们还是有可能会耗尽系统的资源虚拟机永远无法替代裸机的体验和性能。无论宿主机有多么强大,虚拟机的运行速度总是比你在物理计算机上预期的要慢虚拟机虽然与宿主机隔离,但你必须要注意文件共享可能会将恶意软件暴露给你的宿主机系统   虚拟机的概念让许多事情变得可能。   如果没有虚拟机,你认为云计算行业会如何发展?如果每次尝试不同的操作系统都需要重新安装,这将带来多大的不方便?   无论是哪种形式,每个电脑用户或服务器用户都需要虚拟机。你对虚拟机有什么看法呢?你会如何定义它?   (题图:MJ/be913487-080e-4869-98d9-ccd996f68a7f)   via: https://itsfoss.com/virtual-machine/   作者:Ankush Das 选题:lujun9972 译者:ChatGPT 校对:wxy   本文由 LCTT 原创编译,Linux中国 荣誉推出
虚拟机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于虚拟机虚拟机的信息别忘了在本站进行查找喔。

未经允许不得转载! 作者:谁是谁的谁,转载或复制请以超链接形式并注明出处

原文地址:http://www.formosha.com/post/22413.html发布于:2026-03-23