虚拟机内存工作原理-VCP6.0
虚拟机的工作原理
虚拟机的工作原理虚拟机是一种软件技术,它能够在一台计算机上运行多个操作系统或应用程序,并将它们隔离开来。
虚拟机的工作原理是通过模拟硬件资源来实现对多个操作系统的支持和运行。
下面将详细介绍虚拟机的工作原理。
虚拟机利用一个称为“虚拟化层”的软件层来模拟计算机的硬件资源,包括CPU、内存、硬盘和网络接口等。
虚拟化层可以将物理硬件资源抽象为虚拟的硬件资源,并为每个虚拟机分配一定的资源。
每个虚拟机都认为自己独占了这些资源,而实际上它们是由虚拟化层进行管理和分配的。
虚拟机使用一种称为“假设指令集”的技术,将客户操作系统的指令集转换为宿主操作系统的指令集。
这样,虚拟机就可以在宿主操作系统上运行客户操作系统,而客户操作系统则认为自己是在独立的计算机上运行。
假设指令集的转换过程是虚拟机的核心技术之一,它使得虚拟机能够在不同的操作系统之间进行切换和运行。
然后,虚拟机使用一种称为“虚拟设备驱动程序”的技术,将宿主操作系统的设备驱动程序转换为客户操作系统的设备驱动程序。
虚拟设备驱动程序可以与客户操作系统的设备驱动程序进行通信,并将客户操作系统所需的设备功能转换为宿主操作系统所支持的设备功能。
这样,虚拟机就可以访问宿主操作系统的设备资源,例如硬盘、网络和USB等。
虚拟机还利用一种称为“隔离技术”的技术,将不同的虚拟机之间进行隔离。
虚拟机之间的隔离是通过虚拟化层进行管理的,它可以防止虚拟机之间相互干扰或互相访问。
这种隔离技术可以确保每个虚拟机都能够独立运行,并且不受其他虚拟机的影响。
虚拟机的工作原理可以总结为以下几个步骤:虚拟化层模拟硬件资源,假设指令集转换客户操作系统的指令集,虚拟设备驱动程序转换设备驱动程序,隔离技术实现虚拟机之间的隔离。
通过这些步骤,虚拟机可以在一台计算机上运行多个操作系统或应用程序,并实现资源的共享和隔离。
总结起来,虚拟机的工作原理是通过模拟硬件资源、转换指令集、转换设备驱动程序和实现隔离技术来实现对多个操作系统的支持和运行。
虚拟机的原理
虚拟机的原理虚拟机是一种能够在物理硬件上模拟多台计算机的软件系统,它可以在一台物理计算机上同时运行多个操作系统。
虚拟机的原理是通过在物理硬件上创建一个或多个虚拟的计算环境,每个虚拟环境都可以运行独立的操作系统和应用程序。
在这篇文档中,我们将深入探讨虚拟机的原理及其工作方式。
首先,虚拟机的原理基于虚拟化技术,它通过软件或硬件将物理资源进行抽象和隔离,从而实现多个虚拟环境的并发运行。
虚拟机监视器(VMM)是虚拟机的核心组件,它负责管理和调度虚拟机的资源,并提供对物理硬件的访问。
虚拟机监视器通过虚拟化技术将物理硬件抽象成多个虚拟资源,包括CPU、内存、存储和网络等。
其次,虚拟机的原理涉及到虚拟化的关键技术,包括全虚拟化和半虚拟化。
全虚拟化是指虚拟机可以直接访问物理硬件,但需要对操作系统进行修改以适应虚拟化环境。
而半虚拟化则是通过修改操作系统来提供对虚拟化的支持,从而减少虚拟机监视器的开销。
虚拟机监视器通过这些技术来模拟多个独立的计算环境,并在其中运行不同的操作系统和应用程序。
此外,虚拟机的原理还涉及到虚拟机的工作方式。
虚拟机可以分为类型1和类型2两种,类型1是指直接在物理硬件上安装虚拟机监视器,如VMware ESXi和Microsoft Hyper-V;类型2是指在宿主操作系统上安装虚拟机监视器,如VMware Workstation和Oracle VirtualBox。
虚拟机监视器通过虚拟化技术将物理资源抽象成多个虚拟资源,并为虚拟机提供运行环境。
总的来说,虚拟机的原理是基于虚拟化技术,通过虚拟机监视器将物理资源抽象成多个虚拟资源,并为虚拟机提供运行环境。
虚拟机的工作方式包括全虚拟化和半虚拟化,以及类型1和类型2两种形式。
虚拟机的原理和工作方式为多个操作系统和应用程序的并发运行提供了可能,极大地提高了计算资源的利用率和灵活性。
希望本文对您理解虚拟机的原理有所帮助。
虚拟内存的原理
虚拟内存的原理随着计算机技术的不断发展,人们对内存的需求也越来越大。
但是,由于硬件资源的限制,内存容量总是有限的。
为了解决这个问题,虚拟内存应运而生。
虚拟内存是一种将物理内存和磁盘空间结合起来使用的技术。
它通过将部分程序和数据存储在磁盘上,从而释放出更多的物理内存供其他程序使用。
虚拟内存的实现依赖于操作系统的支持,它将内存分为若干个固定大小的页面(Page),并且将磁盘空间划分为与内存页面大小相同的存储块,称为页面文件。
当程序需要访问某个页面时,操作系统会先检查该页面是否已经在物理内存中。
如果在,则直接访问;如果不在,则需要进行页面置换操作,将不常用的页面从内存中换出到磁盘上的页面文件中,然后再将需要访问的页面从磁盘中读入到内存中。
这个过程称为页面调度。
为了提高页面调度的效率,操作系统还引入了页面置换算法。
常见的页面置换算法有最佳(OPT)算法、先进先出(FIFO)算法和最近最久未使用(LRU)算法等。
这些算法根据页面的访问情况和置换成本进行页面选择,以达到最优的页面置换效果。
虚拟内存的另一个重要特性是地址映射。
由于程序的虚拟地址空间和物理地址空间是不一样的,所以需要通过地址映射将虚拟地址转换为物理地址。
操作系统通过页表来实现地址映射。
页表是一个存储在内存中的数据结构,它记录了每个页面在物理内存中的位置信息。
当程序访问某个虚拟地址时,操作系统会根据页表将其转换为物理地址。
如果页表中不存在对应的映射关系,则会触发缺页中断,操作系统会根据页面调度算法将所需的页面从磁盘中读入到内存中,并更新页表中的映射关系。
虚拟内存的引入大大提高了计算机系统的性能和可用性。
它使得程序能够使用比物理内存更大的地址空间,同时也减少了内存碎片的产生。
此外,虚拟内存还能够提供进程隔离和保护的功能,确保每个程序都能在独立的地址空间中运行,互不干扰。
然而,虚拟内存也存在一些问题。
首先,由于磁盘的访问速度远慢于内存,所以虚拟内存会带来一定的性能损失。
虚拟机的工作原理
虚拟机的工作原理虚拟机是一种模拟计算机系统的软件或硬件实体,可以在其上运行其他操作系统或软件。
它的工作原理是通过虚拟化技术,将物理计算机资源(如处理器、内存、硬盘等)分割成多个独立的虚拟环境,每个虚拟环境被称为一个虚拟机。
虚拟机可以在同一台物理计算机上同时运行多个操作系统,实现资源的有效利用和隔离。
虚拟机的工作原理可以简单地分为三个主要步骤:虚拟化、模拟和隔离。
虚拟化是指将物理计算机的资源划分为多个虚拟机的过程。
在虚拟化的过程中,虚拟机监视器(也称为Hypervisor)被插入到物理计算机的操作系统和硬件之间,作为虚拟机和物理计算机之间的中间层。
虚拟机监视器负责管理和分配物理计算机的资源,为每个虚拟机提供一定数量的处理器、内存和硬盘空间等。
模拟是指虚拟机监视器通过软件仿真的方式,为每个虚拟机提供一个独立的运行环境,使其能够运行不同的操作系统和应用程序。
虚拟机监视器通过创建虚拟的处理器、内存和硬盘等设备,以及提供与物理计算机相似的接口和功能,使虚拟机可以像在独立的计算机上运行一样。
虚拟机监视器将虚拟机的指令转换为物理计算机的指令,并将虚拟机的输入输出映射到物理计算机的输入输出。
隔离是指虚拟机之间相互独立、互不干扰的特性。
每个虚拟机都运行在自己的虚拟环境中,有自己的操作系统和应用程序,彼此之间互不干扰。
这种隔离性可以防止虚拟机之间的故障互相影响,提高了系统的可靠性和安全性。
同时,虚拟机监视器还提供了对虚拟机的管理和监控功能,可以对虚拟机进行资源分配、性能监测和故障恢复等操作。
虚拟机的工作原理可以带来许多好处。
首先,虚拟机可以提高计算机资源的利用率。
由于每个虚拟机只使用所分配的资源,因此可以在同一台物理计算机上同时运行多个虚拟机,提高系统的整体利用率。
其次,虚拟机可以简化系统的部署和管理。
通过虚拟机,可以快速创建、复制和移动整个系统,而无需重新安装和配置操作系统和应用程序。
此外,虚拟机还提供了隔离和安全性,可以将不同的应用程序和用户隔离开来,防止故障和攻击的传播。
虚拟机的原理
虚拟机的原理
虚拟机是一种软件技术,它模拟了一台完整的计算机系统,包括处理器、内存、存储和网络等组件。
用户可以在虚拟机上运行操作系统和应用程序,就像在真实的计算机上运行一样。
虚拟机的工作原理如下:
1. 虚拟机管理程序(VMM)负责创建和管理虚拟机。
它在物理计算机上运行,为每个虚拟机提供资源和服务。
VMM通过将物理计算机的资源划分成多个虚拟部分来实现虚拟化。
2. 虚拟机监控器(VMM)模拟了计算机硬件的功能。
它拦截虚拟机对硬件的访问,并将其转发给物理计算机的实际硬件。
这样一来,虚拟机就可以在不了解物理硬件的情况下运行。
3. 虚拟机在其所分配到的资源上运行操作系统和应用程序。
虚拟机的操作系统认为自己是在真实的计算机上运行,但实际上它们只是在虚拟化环境中运行。
4. 虚拟机之间是相互隔离的,它们不会相互干扰。
每个虚拟机都拥有自己的独立操作系统和应用程序,与其他虚拟机隔离开来。
5. 虚拟机可以动态地分配和释放资源。
当一个虚拟机需要更多的资源时,VMM可以重新分配物理计算机上的资源给它。
当虚拟机不再需要资源时,VMM可以回收这些资源供其他虚拟机使用。
虚拟机的优点包括提高硬件利用率、简化管理、降低成本和提供一致的运行环境。
它广泛应用于服务器虚拟化、开发和测试环境以及云计算等领域。
虚拟存储的工作原理
虚拟存储的工作原理
虚拟存储是一种计算机系统中的内存管理技术,它允许程序直接使用磁盘空间作为虚拟内存的扩展。
虚拟存储的工作原理如下:
1. 虚拟内存划分:操作系统将物理内存和磁盘空间分成固定大小的块,称为页面(Page)。
每个页面可以映射到内存或磁盘上的特定位置。
操作系统还将虚拟内存划分为等大小的虚拟页(Virtual Page)。
2. 页面置换:当系统运行程序需要更多内存资源时,如果物理内存已满,操作系统会根据一定的置换算法,选择一些页面从内存中置换到磁盘上。
被置换的页面暂时存储在磁盘的交换空间中。
3. 地址转换:程序中的指令和数据使用虚拟地址进行访问,这些虚拟地址被映射到物理地址上。
在每次访问内存时,硬件上的内存管理单元(MMU)会将虚拟地址转换为物理地址。
4. 页面错误处理:当程序访问的页面在物理内存中不存在时,就会发生页面错误(Page Fault)。
操作系统会根据页面错误的原因,将相应的页面从磁盘加载到内存中,并更新页表,使得虚拟地址可以正确映射到物理地址。
5. 页面置换策略:常见的页面置换策略包括最佳置换算法(OPT),先进先出算法(FIFO),最近最久未使用算法(LRU)等。
这些算法根据页面的使用情况,选择最适合置换
的页面,以尽量减少页面错误次数。
通过这种虚拟存储的工作原理,系统可以在较小的物理内存容量下运行更大的程序,提高了计算机系统的资源利用率和运行效率。
虚拟内存技术的工作原理
虚拟内存技术的工作原理虚拟内存是一种操作系统提供的一种技术,它将主存和辅助存储器(通常是硬盘)结合起来,为进程提供了一个比实际物理内存更大的地址空间。
虚拟内存技术的核心原理是将进程的逻辑地址空间与物理内存进行映射,使得进程能够访问超出实际物理内存大小的数据。
虚拟内存的工作原理可以分为几个关键步骤:1.地址转换:当进程执行时,它使用的是虚拟地址。
这些虚拟地址需要被转换为物理地址,才能在实际的物理内存中进行访问。
操作系统通过硬件机制(如页表)来进行地址转换。
2.页面调度:当进程需要访问的页面不在物理内存中时,操作系统需要将该页面从辅助存储器(硬盘)加载到物理内存。
为了提高效率,操作系统会将物理内存空间划分为固定大小的页面,这些页面是虚拟内存和物理内存之间的基本单位。
3.页面置换:当物理内存不足时,操作系统需要将一些不常用的页面从物理内存中置换出去,而将需要访问的页面置换到物理内存中。
常见的页面置换算法有FIFO(先进先出)、LRU(最近最久未使用)等。
4.页面写入:当需要写入页面数据时,操作系统可以选择将页面直接写入辅助存储器,而不是每次都写回物理内存。
这样可以减少对物理内存的访问次数,提高效率。
1.扩展了物理内存大小:虚拟内存将进程的逻辑地址空间与实际物理内存分离,使得进程可以拥有比实际物理内存更大的地址空间。
这意味着即使物理内存大小有限,进程仍然可以处理更大的数据集。
2.提高了内存利用率:由于虚拟内存将进程的逻辑地址空间与物理内存进行映射,操作系统可以根据进程的需求动态地将页面放入或置换出物理内存。
这样可以更灵活地利用物理内存,提高内存利用率。
1.频繁的页面置换可能导致性能下降:当物理内存不足时,无法避免进行页面置换操作。
如果页面置换过于频繁,会导致系统性能下降,因为频繁的磁盘访问速度远远慢于内存访问速度。
2.增加了一些开销:虚拟内存技术需要额外的硬件支持和软件机制,这会增加了一些开销。
例如,需要维护页表来进行地址转换,需要进行页面的加载和置换等操作,这些都需要消耗一定的计算资源和时间。
虚拟存储器的工作原理
虚拟存储器的工作原理
虚拟存储器是一种计算机内存管理技术,它通过将应用程序所需的数据和指令分为多个页面(或称为块或帧)来实现。
虚拟存储器的工作原理包括以下几个步骤:
1. 分页:将应用程序的内存划分为固定大小的页面,通常为
4KB或8KB。
每个页面都有一个唯一的页面编号。
2. 页面映射:将每个页面映射到物理内存的一个帧(或页框),帧的大小与页面大小相同。
这个映射关系被记录在页表中,页表保存在主存储器中。
3. 页面调度:当应用程序需要访问内存中的某个页面时,先检查页表。
如果该页面已经在物理内存中,则直接访问对应的物理地址;如果该页面不在物理内存中,则发生页面错误(缺页错误)。
4. 页面置换:当发生页面错误时,操作系统需要选择一个页面来替换出去,以腾出空间来加载所需的页面。
常见的页面置换算法有最近最少使用(LRU)和先进先出(FIFO)。
5. 页面加载:一旦选择了要换出的页面,操作系统会从外部存储(如硬盘)中加载所需的页面,并更新页表中的映射关系。
6. 页面更新:当应用程序对页面进行写操作时,会先将数据写入缓存页面(缓冲区),然后再由操作系统将缓存页面写回到
外部存储。
虚拟存储器的工作原理使得应用程序能够访问比物理内存更大的内存空间,而且不需要将所有数据一次性加载到内存中。
这种分页和页面调度的技术可以提高程序的整体性能,并且允许多个应用程序同时运行,因为它们不会相互干扰彼此的内存空间。
虚拟存储器工作原理
虚拟存储器工作原理
虚拟存储器是计算机系统中的一种技术,它通过将磁盘的部分空间用作与主存储器(RAM)交换数据的扩展,以提供更大的可用存储空间。
虚拟存储器工作原理如下:
1. 虚拟存储器将主存储器划分为固定大小的页面(也称为页框),通常是4KB或8KB等大小。
2. 当一个程序被加载到主存储器时,操作系统将其分为固定大小的块,称为页面。
3. 当程序需要访问某个页面时,操作系统会检查该页面是否已存在于主存储器中。
4. 如果所需页面已存在于主存储器中,则程序可以直接访问该页面,无需进行磁盘读取操作。
这是最理想的情况,因为主存储器的访问速度要比磁盘快得多。
5. 然而,如果所需页面不在主存储器中,操作系统会将主存储器中的某个页面(通常是最近最少使用的页面)替换成需要的页面。
替换页面的过程称为页面置换。
6. 被替换出的页面会被写回到磁盘上的一个空闲页面中,以便在后续需要时可以重新加载到主存储器中。
7. 在访问磁盘上的页面并将其加载到主存储器之前,操作系统会通过磁盘存储器管理单元(MMU)进行地址转换,以确保正确访问到磁盘上的页面。
通过使用虚拟存储器,计算机系统可以充分利用磁盘空间来扩展主存储器的大小。
这样,即使计算机系统的物理内存有限,也可以运行更大的程序或处理更多的数据,而不会出现严重的
内存不足问题。
虚拟存储器的工作原理可以使计算机系统在物理内存有限的情况下更加灵活和高效地管理内存资源。
虚拟机工作原理
虚拟机工作原理
虚拟机是一种软件或硬件实现的软件运行环境,它能够在主机操作系统上创建出一台虚拟的计算机,将计算机硬件资源进行虚拟化,以便能够运行不同的操作系统和应用程序。
虚拟机的工作原理主要包括以下几个方面:
1. 虚拟化层:虚拟机软件通过在主机上创建一个虚拟化层来实现虚拟机的功能。
该虚拟化层模拟出一套计算机硬件环境,包括处理器、内存、硬盘、网络等,给虚拟机提供一种与物理计算机类似的环境。
2. 资源调度:虚拟机软件会对主机的物理资源进行分配和管理。
例如,对于处理器资源,虚拟机软件会将物理处理器的时间片分配给不同的虚拟机,以实现多个虚拟机在同一台主机上并行运行。
3. 操作系统隔离:每个虚拟机都可以运行独立的操作系统。
虚拟机软件在虚拟化层上实现了对操作系统的隔离,使得每个虚拟机都能够独立运行,互不干扰。
4. I/O虚拟化:虚拟机软件还实现了对输入输出设备的虚拟化。
它将主机的物理设备虚拟化为多个虚拟设备,每个虚拟机都可以独享一部分虚拟设备资源,从而实现了对设备的并行访问。
总的来说,虚拟机通过虚拟化层和资源调度,为每个虚拟机提供了一个独立的运行环境,并能够实现对操作系统和设备的隔
离和虚拟化,使得多个虚拟机可以在同一台主机上并行运行。
这种虚拟化的方式能够提高计算机资源的利用率,降低硬件成本,同时也提高了计算机系统的可扩展性和可靠性。
简述虚拟存储器的工作原理
简述虚拟存储器的工作原理咱来说说这虚拟存储器呀,它就像是一个超级大魔术师!你看啊,我们的电脑或者其他设备,它的实际内存就那么大点儿,就好像是一个小房间,能放的东西有限。
但是呢,有了虚拟存储器,那就不一样啦!它可以让我们感觉好像有无限大的空间可以用呢!就好像我们本来只有一个小箱子装东西,现在突然有了一个超级大仓库,可以随便往里放。
虚拟存储器会在我们需要的时候,把数据从硬盘之类的地方调出来,就像是从仓库里把东西拿出来放到小箱子里,让我们能随时使用。
你想想,要是没有它,那我们用电脑的时候,稍微多开几个程序或者文件,可能就不行啦,会提示内存不足啥的,多烦人呀!但是有了虚拟存储器这个神奇的东西,就不用担心啦。
它就像是给我们的设备开了个外挂一样,让我们可以自由自在地在数字世界里遨游。
不用老是担心空间不够,只管尽情地去探索、去尝试各种新的东西。
比如说,你正在玩一个超好玩的游戏,玩得正嗨呢,突然提示内存不足,那得多扫兴呀!但是有了虚拟存储器,这种情况就不太容易发生啦。
它会默默地在背后帮我们搞定这些问题,让我们可以毫无顾忌地享受游戏的乐趣。
再比如,你在工作的时候,需要同时打开很多文档和软件,要是没有虚拟存储器,那可能一会儿就卡得不行了。
但是有了它,一切都变得那么顺畅,工作效率也能大大提高呢!虚拟存储器不就是我们数字生活中的好帮手吗?它让我们可以更加轻松、愉快地使用各种设备,不用再为内存不够而烦恼。
这难道不是很神奇、很厉害吗?总之呢,虚拟存储器就是这么一个不可或缺的存在,它让我们的数字世界变得更加丰富多彩,更加有趣!它就像是一个默默守护我们的超级英雄,虽然我们可能平时不太会注意到它,但它一直在那里,为我们的数字生活保驾护航!你说,它是不是很棒呀?。
页式虚拟存储器的工作原理
页式虚拟存储器的工作原理页式虚拟存储器是计算机系统中用于管理虚拟内存的一种技术。
它通过将物理内存和磁盘空间结合起来,使得计算机能够有效地处理比实际内存容量更大的程序。
在本文中,将深入探讨页式虚拟存储器的工作原理,包括虚拟内存、物理内存、页面置换算法等相关概念,以及页式虚拟存储器的工作流程和优缺点。
一、虚拟内存的概念虚拟内存是一种计算机系统中的重要技术,它使得计算机能够同时运行多个程序,并且能够处理比实际物理内存更大的程序。
虚拟内存利用辅助存储设备(如硬盘)来扩展计算机的物理内存。
这样,程序可以运行,而不必全部载入内存中。
虚拟内存的有效性主要体现在以下几个方面:1.提高内存利用率。
虚拟内存使得计算机能够运行更多的程序,同时不会受到物理内存大小的限制。
2.提高系统的性能。
虚拟内存能够减少因内存不足而产生的页面置换,从而提高系统的性能。
3.保护程序。
虚拟内存可以有效地保护程序的数据,在内存中分配给每个程序的地址是单独的,避免了程序之间的干扰。
二、页式虚拟存储器的概念页式虚拟存储器是一种虚拟内存管理技术,通过将程序的虚拟地址空间和物理内存空间分割成固定大小的页面,来管理虚拟内存。
页式虚拟存储器的主要特点是页的大小固定,并且虚拟地址空间和物理地址空间都被分割成块状的页面。
在页式虚拟存储器中,每个页面都有一个对应的页面表项,用于记录页面在物理内存中的位置。
在页式虚拟存储器中,程序只能在物理内存中保持活动状态的页面,当程序访问的页面不在物理内存中时,系统会将相应的页面从辅助存储设备(如硬盘)中加载到物理内存中。
这种分页式管理方式,使得虚拟内存的管理更加灵活,能够有效地管理大容量的虚拟内存空间。
三、物理内存和虚拟内存的映射在页式虚拟存储器中,虚拟内存和物理内存之间存在映射关系,即虚拟地址空间中的页面被映射到物理内存中的页面。
这种映射关系是通过页表来实现的。
页表是一个用于记录虚拟地址空间和物理地址空间映射关系的数据结构。
虚拟机存储原理
虚拟机存储原理
虚拟硬盘存储是指将虚拟机中的数据存储在虚拟硬盘设备中。
虚拟硬盘设备可以是一个单独的文件,也可以是一个分区。
虚拟机在运行过程中,可以读取和写入虚拟硬盘设备中的数据,就像物理机一样。
虚拟内存存储是指将虚拟机中的数据存储在主机的内存中。
虚拟机在运行过程中,可以读取和写入主机内存中的数据。
虚拟内存存储的好处是可以加快虚拟机的运行速度,但是需要注意的是,虚拟内存存储可能会占用主机的大量内存,因此需要根据实际情况进行调整。
虚拟机存储的实现原理主要涉及到虚拟硬件设备的模拟和数据
传输的处理。
虚拟机在运行过程中,需要通过虚拟机监控程序(VMM)来模拟虚拟硬件设备,并将虚拟机中的数据传输到主机的物理硬件设备中。
虚拟机监控程序在处理数据传输的过程中,需要进行大量的计算和数据转换操作,因此需要具备较高的性能和稳定性。
虚拟机存储的应用范围非常广泛,可以用于虚拟化服务器、虚拟化桌面、云计算等领域。
随着虚拟化技术的不断发展,虚拟机存储的性能和功能也在不断提升,为企业提供了更加高效和灵活的数据存储方案。
- 1 -。
vmware虚拟机工作原理
vmware虚拟机工作原理VMware虚拟机工作原理随着云计算和虚拟化技术的快速发展,虚拟机成为了企业和个人用户中非常重要的工具。
而在虚拟机领域中,VMware虚拟机是最为知名和广泛应用的一种虚拟机技术。
那么,VMware虚拟机是如何工作的呢?本文将详细介绍VMware虚拟机的工作原理。
VMware虚拟机是一种软件实现的虚拟机,在物理主机上创建了一个或多个虚拟机,每个虚拟机都可以独立运行一个完整的操作系统。
VMware虚拟机的工作原理主要包括虚拟化层、虚拟机监控器和虚拟硬件。
虚拟化层是VMware虚拟机的核心组件之一。
它负责将物理主机的资源,如处理器、内存、硬盘和网络等进行抽象,并将其划分为多个虚拟资源。
虚拟化层可以实现对物理资源的虚拟化,使得多个虚拟机可以同时运行在同一台物理主机上,互不干扰。
虚拟机监控器(VMM)是VMware虚拟机的另一个重要组件。
虚拟机监控器是一个运行在物理主机上的软件,它负责管理和监控虚拟机的运行。
虚拟机监控器通过与虚拟化层进行交互,为每个虚拟机提供一个独立的运行环境。
它能够分配和调度虚拟机所需的资源,并对虚拟机进行监控和管理。
虚拟硬件是虚拟机中的一个重要组成部分。
虚拟硬件是在虚拟机监控器的控制下创建的,它为虚拟机提供了一套与物理硬件相似的硬件环境。
虚拟硬件包括虚拟处理器、虚拟内存、虚拟硬盘和虚拟网络等。
虚拟硬件在虚拟机中运行时与虚拟机监控器进行交互,实现对物理资源的访问和管理。
总结起来,VMware虚拟机的工作原理主要包括虚拟化层、虚拟机监控器和虚拟硬件。
虚拟化层负责将物理资源进行虚拟化,虚拟机监控器管理和监控虚拟机的运行,虚拟硬件为虚拟机提供了一套与物理硬件相似的硬件环境。
这三个组件相互配合,实现了VMware 虚拟机的工作。
VMware虚拟机的工作原理使得用户可以在一台物理主机上同时运行多个独立的虚拟机,每个虚拟机都可以运行不同的操作系统和应用程序。
虚拟机之间相互隔离,互不干扰,提供了更高的资源利用率和灵活性。
虚拟机内存工作原理-VCP6.0
虚拟机内存工作原理Windows环境内存名词释义Windows内存管理概述在现代计算机系统中,内存是指CPU可以直接访问的随机存储器。
在硬件上,CPU通过一组地址线连接到内存上,这组地址线称为内存总线。
而在软件上,CPU的许多指令允许用内存单元地址作为指令的操作数,实现直接操纵这些内存单元。
内存地址,在Intel x86体系结构中,内存地址有三种类型:物理地址即内存存储器的索引,CPU操纵内存芯片时,通过地址线管脚加上电信号来读或写相应的内存单元。
在Intel x86体系结构上,物理地址是一个32位或36位的无符号整数。
虚拟地址:在32位系统上,虚拟地址空间可以达到4GB大小,也就是说,整个空间可以有232=4294967296个字节单元。
Intel x86芯片内有专门的电路负责把一个虚拟地址转译成物理地址。
逻辑地址。
逻辑地址包含两部分:段和偏移。
段指定了在整个地址空间中的一个基地址、段空间的大小、属性。
与寻址相关的是段的基址和大小。
偏移部分指定了一个逻辑地址相对于段基址的偏移量。
此偏移量不能超过段的边界。
因此,逻辑地址的实际地址是段基址加上偏移量。
Intel x86芯片也有专门的电路把逻辑地址转译成一个虚拟地址或物理地址。
把一个地址告诉CPU,让它访问相对应的物理内存单元,这一过程是操作系统和CPU相互协作来完成的。
CPU最终需要的是一个物理地址,它必须把软件指令中的地址转译成物理地址,在转译过程中可能会涉及一些数据结构,甚至涉及I/O操作。
从操作系统的角度来看,一方面,它需要有效地管理所有的物理内存,使得当一个进程需要内存时,能够分配足够的内存单元给这一进程;另一方面,正如上一章所讲,进程代表一个相对独立的任务,它有一个逻辑上独立的地址空间。
不同进程的地址空间应该是相互隔离的。
实现每个进程都有自己的私有地址空间。
当系统中进程数量增加以后,所需内存数量往往超过了总的物理内存,在这种情况下,操作系统须合理地安排内存的使用,使得内存紧缺时,既不会波及系统本身的稳定性,同时也不会严重影响系统的性能。
vCPU工作及调度原理-VCP6.0
vCPU工作原理术语解释:1、CPU主频在电子技术中,脉冲信号是一个按一定电压幅度,一定时间间隔连续发出的模拟信号。
在单位时间(1秒)内所产生的脉冲个数称为频率。
频率是描述周期性脉冲信号在单位时间内所出现的脉冲数量多少的计量名称;频率的标准计量单位是Hz(赫)。
计算机的系统时钟是频率相当精确和稳定的脉冲信号发生器。
其相应的单位有:Hz(赫)、kHz(千赫)、MHz (兆赫)、GHz(吉赫)。
其中1GHz=1000MHz,1MHz=1000kHz,1kHz=1000Hz,1GHz=109Hz。
CPU主频即CPU内核工作的时钟频率(CPU Clock Speed)。
CPU主频:CPU数字脉冲信号正弦波震荡的速度。
CPU轮询时间片:主频2.0GHz(2*109次/秒),时间片:(1/2亿)秒。
案例:1颗单核CPU,同一时间运行MP3、word,CPU通过时间片轮询处理应用。
2、CPU缓存缓存的工作原理:CPU读取数据时先从CPU内置缓存中查找,若找到就立即读取并送给CPU处理;若没有找到,则用相对慢的速度从内存中读取并送CPU处理,同时把这个数据所在的数据块调入缓存中,可以使CPU后续对整块数据的读取都从缓存中调取,不再调用内存。
用来提高效率。
提升效果大约有30%左右。
通俗讲:一个火车站共8个售票员,而只有一个售票窗口。
一个窗口只需要4个人就可以应付的很好,那么闲着的4个就会发呆白拿工资。
若此时增加一个售票窗口,将发呆的4个人利用起来,就可以提高一倍的工作效率,就算一号窗口人手不足从二号窗口又抽调了2个人,2号窗口剩下的2个人依然可以分流1号窗口的工作压力,总体上提升了效率。
虽然采用超线程技术能同时执行两个线程,但它并不象两个真正的CPU那样,每个CPU都具有独立的资源。
当两个线程都同时需要某一个资源时,其中一个要暂时停止,并让出资源,直到这些资源闲置后才能继续。
因此超线程的性能并不等于两颗CPU的性能。
虚拟机的工作原理
虚拟机的工作原理虚拟机是一种软件,它模拟了一台计算机的硬件环境,使得在同一台物理计算机上可以运行多个虚拟机,每个虚拟机都可以运行不同的操作系统和应用程序。
虚拟机的工作原理主要包括虚拟化技术、虚拟机监控器和虚拟设备等方面。
虚拟化技术是虚拟机的核心技术,它可以将一台物理计算机分割成多个虚拟计算机,每个虚拟计算机都可以独立运行不同的操作系统和应用程序。
虚拟化技术主要有两种实现方式:全虚拟化和半虚拟化。
全虚拟化是指虚拟机可以完全模拟出一台真实计算机的硬件环境,包括CPU、内存、硬盘、网卡等,虚拟机中运行的操作系统和应用程序无需对硬件进行任何修改。
半虚拟化是指虚拟机只模拟了部分硬件环境,操作系统和应用程序需要进行修改才能在虚拟机中运行。
虚拟机监控器是虚拟机的核心组件,它负责管理虚拟机的运行和资源分配。
虚拟机监控器可以分为两种类型:类型1监控器和类型2监控器。
类型1监控器也称为裸机监控器,它直接运行在物理计算机的硬件上,可以直接访问硬件资源,性能较高,但需要专门的硬件支持。
类型2监控器也称为主机监控器,它运行在操作系统上,通过操作系统提供的接口访问硬件资源,性能较低,但可以在普通计算机上运行。
虚拟设备是虚拟机中的硬件设备,它们可以模拟出真实计算机中的各种硬件设备,如CPU、内存、硬盘、网卡等。
虚拟设备可以分为两种类型:虚拟化设备和仿真设备。
虚拟化设备是指虚拟机中的设备直接访问物理计算机的硬件资源,性能较高,但需要专门的硬件支持。
仿真设备是指虚拟机中的设备通过虚拟机监控器模拟出来,性能较低,但可以在普通计算机上运行。
总之,虚拟机的工作原理是通过虚拟化技术将一台物理计算机分割成多个虚拟计算机,每个虚拟计算机都可以独立运行不同的操作系统和应用程序。
虚拟机监控器负责管理虚拟机的运行和资源分配,虚拟设备可以模拟出真实计算机中的各种硬件设备。
虚拟机的工作原理为我们提供了一种灵活、高效的计算机资源管理方式,使得我们可以更好地利用计算机资源,提高计算机的利用率。
虚拟存储技术原理
虚拟存储技术原理虚拟存储器是根据程序的逻辑地址转换来的,也称线性地址空间。
一般每个进程,甚至每个段都有一个,以32 位为例,则每个最大可达4G。
而主存目前一般为百M 。
因此程序中所指的存储单元并不能都放到主存中,也就是并不是每个程序所用的存储单元,都有具体的物理的存储器单元与之对应。
虚拟存储器是根据程序的逻辑地址转换来的,也称线性地址空间。
一般每个进程,甚至每个段都有一个,以32 位为例,则每个最大可达4G。
而主存目前一般为百M 。
因此程序中所指的存储单元并不能都放到主存中,也就是并不是每个程序所用的存储单元,都有具体的物理的存储器单元与之对应。
应有一个位子上课(一万个虚拟位子),而学校只有一千个(物理)位子。
但实际上,学校也不会一万个人同时上课,只要让上课的同学有位子(在主存中),而其它同学只要留下联系方法能找到就好。
为了降低管理的复杂性,我们采用按学号分班(页)管理。
每个班要么一起上课(主存),要么一起呆在寝室(磁盘)。
而在学校保留一个动态表(页表)表明每个班在哪儿(物理地址)上课,或者没上课(不在主存)。
现在假设我们想按学号找一个同学,而且是女同学,只能在教室说话,呵呵。
那么:先算出来是哪个班的,查动态表,看该班是否在教室。
在,直接按位置找到(hit);不在(page fault),要先找个不上课的班赶回寝室,把要找女生所在的班调到教室,再按位置找那个同学。
动态表(页表)的大小=表项数*每个表项所需的位数。
表项数=虚拟班数二虚拟人数(虚拟地址空间”每班人数(每页大小)每个表项的位数=Log(教室数)+适当控制位数教室数=实际可以上课的人数(物理地址空间”每班人数(每页大小)TLBVirtual pagenumber Tag Physical page address"ll1、、1、11111Physical memoryPhysical page orV disk addressDisk storagePage table虚拟地址换算:虚拟地址(力位)更表素引(36-13=23位:&M)酿13 位f:EKB)-页表寄存器V D F V Physical addreev〔19 位〕TiTi'i■ T-r;-i c■ i i i d"a ■ i i i d"a"h i i i d"a'h i i"1 u B'II'L*i i ■ L iTi i ■ " u II'I i ■iL'.L'J:.■I :I EiLai_!■.■-■.:::L-;i3.;iul.k;>3l』-I-'-!. 2.■页表(EM x23S =詬MB)物理地址(32^)物理也址高19位TLB miss :4G(32-bit)的存储空间,如果按4K分页,则可分1M页。
虚拟机工作原理
虚拟机工作原理虚拟机(Virtual Machine)是一种在计算机系统上创建的模拟计算机环境,它能够在一个物理计算机上运行多个操作系统和应用程序。
虚拟机技术的出现,极大地提高了计算机资源的利用率,同时也为软件开发、测试和部署带来了便利。
那么,虚拟机是如何工作的呢?接下来,我们将深入探讨虚拟机的工作原理。
首先,虚拟机的工作原理基于虚拟化技术。
虚拟化技术是一种将物理计算机资源抽象为虚拟计算机资源的技术,它能够将一个物理计算机划分为多个独立的虚拟计算机,每个虚拟计算机拥有自己的操作系统和应用程序。
虚拟机利用虚拟化技术,通过软件模拟出一个完整的计算机系统,包括处理器、内存、硬盘、网络等硬件设备,从而实现在一个物理计算机上运行多个虚拟计算机的功能。
其次,虚拟机的工作原理涉及到虚拟化层和虚拟机监控程序。
虚拟化层是虚拟机软件的核心组成部分,它负责将物理计算机的资源抽象为虚拟计算机资源,并为虚拟机提供运行环境。
虚拟机监控程序是虚拟机软件的管理程序,它负责创建、启动、停止、销毁虚拟机,并监控虚拟机的运行状态。
虚拟化层和虚拟机监控程序共同协作,实现了虚拟机的工作原理。
再者,虚拟机的工作原理还涉及到虚拟机的调度和资源管理。
虚拟机的调度是指虚拟机监控程序根据虚拟机的运行状态和优先级,合理地分配物理计算机的资源给虚拟机,以保证每个虚拟机都能够得到足够的资源。
资源管理是指虚拟机监控程序监控和管理虚拟机对物理计算机资源的使用,包括内存、CPU、硬盘、网络等资源的分配和回收,以确保虚拟机能够高效地利用物理计算机资源。
最后,虚拟机的工作原理还涉及到虚拟机的指令转译和硬件辅助。
虚拟机的指令转译是指虚拟机监控程序将虚拟机的指令转换为物理计算机的指令,以实现虚拟机的指令执行。
硬件辅助是指物理计算机的硬件设备对虚拟机的支持,包括虚拟化扩展指令集、硬件虚拟化技术等,能够提高虚拟机的性能和安全性。
综上所述,虚拟机的工作原理是基于虚拟化技术,通过虚拟化层和虚拟机监控程序实现虚拟机的创建和管理,通过虚拟机的调度和资源管理实现虚拟机的运行,通过指令转译和硬件辅助实现虚拟机的指令执行。
虚拟机存储原理
虚拟机存储原理
虚拟机存储原理是指虚拟机在运行时如何进行存储和管理数据
的过程。
在虚拟化环境中,虚拟机需要创建和维护自己的存储空间,这些存储空间可以是基于物理硬件的磁盘、内存和网络存储等多种形式。
虚拟机存储原理的核心是虚拟化技术,在虚拟化中,虚拟机通过虚拟化软件和虚拟化硬件来模拟物理硬件,从而实现对资源的隔离和分配。
虚拟化技术可以将物理硬件抽象成虚拟机所需要的虚拟硬件,从而实现虚拟机对资源的控制和管理。
在虚拟化环境中,虚拟机的存储空间通常由虚拟磁盘来实现。
虚拟磁盘是一种虚拟化的存储设备,它可以由物理硬盘、网络存储等多种形式实现。
虚拟磁盘可以分为两种类型,即虚拟硬盘和虚拟磁盘镜像。
虚拟硬盘是一种虚拟化的磁盘,它可以由物理硬盘、网络存储等多种形式实现。
虚拟硬盘可以被虚拟机直接访问,从而实现虚拟机对数据的读写操作。
虚拟磁盘镜像是一种虚拟磁盘的映像文件,它可以由物理硬盘、网络存储等多种形式实现。
虚拟磁盘镜像可以被虚拟机加载和卸载,从而实现虚拟机对数据的读写操作。
总的来说,虚拟机存储原理是虚拟化技术在存储管理方面的具体实现。
通过虚拟化技术,虚拟机可以实现对存储设备的隔离和分配,从而实现虚拟机对数据的读写操作。
虚拟机存储原理的研究和应用对
于虚拟化技术的发展和应用都具有重要意义。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
虚拟机内存工作原理
Windows环境内存名词释义
Windows内存管理概述
在现代计算机系统中,内存是指CPU可以直接访问的随机存储器。
在硬件上,CPU通过一组地址线连接到内存上,这组地址线称为内存总线。
而在软件上,CPU的许多指令允许用内存单元地址作为指令的操作数,实现直接操纵这些内存单元。
内存地址,在Intel x86
体系结构中,内存地址有三种类型:
物理地址即内存存储器的索引,CPU操纵内存芯片时,通过地址线管脚加上电信号来读或写相应的内存单元。
在Intel x86体系结构上,物理地址是一个32位或36位的无符号整数。
虚拟地址:在32位系统上,虚拟地址空间可以达到4GB大小,也就是说,整个空间可以有232=4294967296个字节单元。
Intel x86芯片内有专门的电路负责把一个虚拟地址转译成物理地址。
逻辑地址。
逻辑地址包含两部分:段和偏移。
段指定了在整个地址空间中的一个基地址、段空间的大小、属性。
与寻址相关的是段的基址和大小。
偏移部分指定了一个逻辑地址相对于段基址的偏移量。
此偏移量不能超过段的边界。
因此,逻辑地址的实际地址是段基址加上偏移量。
Intel x86芯片也有专门的电路把逻辑地址转译成一个虚拟地址或物理地址。
把一个地址告诉CPU,让它访问相对应的物理内存单元,这一过程是操作系统和CPU相互协作来完成的。
CPU最终需要的是一个物理地址,它必须把软件指令中的地址转译成物理地址,在转译过程中可能会涉及一些数据结构,甚至涉及I/O操作。
从操作系统的角度来看,一方面,它需要有效地管理所有的物理内存,使得当一个进程需要内存时,能够分配足够的内存单元给这一进程;另一方面,正如上一章所讲,进程代表一个相对独立的任务,它有一个逻辑上独立的地址空间。
不同进程的地址空间应该是相互隔离的。
实现每个进程都有自己的私有地址空间。
当系统中进程数量增加以后,所需内存数量往往超过了总的物理内存,在这种情况下,操作系统须合理地安排内存的使用,使得内存紧缺时,既不会波及系统本身的稳定性,同时也不会严重影响系统的性能。
当发生这种情况时,一般的做法是把不紧急的进程中的数据或代码先存放到硬盘(pagefile)中,从而把它们占用的物理内存腾出来给紧急的进程使用,或者交给系统使用。
当内存紧缺的状况缓解时,系统再把硬盘(pagefile)中的进程数据或代码装回到已经空闲下来的内存单元中,从而使这些进程有机会继续运行。
这两个过程称为内存换出和换入。
几乎所有的多进程操作系统都支持这种内存管理。
内存基本单元总是字节Bytes。
每个内存地址指向一个字节,地址值加1以后指向下一个字节。
物理内存的地址是固定的,故让进程使用物理地址来访问内存将使得进程的动态分配难以有效实施,因为内存单元与进程将通过物理地址紧密地联系在一起了,从而内存的回收和再分配将受限于特定的进程和物理地址。
为打破这种关联关系,思路是让进程使用虚拟地址,而虚拟地址和物理地址之间通过一个映射表来完成转译。
1.1 pagefile:即windows安装过程中创建的分页文件,见下图。
会根据需要在物理内存与磁盘之间移动。
案例:发生在一个有智慧的水池(Host)中,水池有不少水(4GB物理内存),里面还有2个水箱(配置了2台VM),水箱有一定的容量(配置内存是4GB),原本是空的(没有开机)。
1、充裕HOST memory保障VM memory使用的情况
现在水箱1里面要养鱼了,必须放点水进去以便鱼可以存活(开机了)。
最少需要1GB 内存。
于是水箱1(VM1)就向水池(Host)要水(物理内存),水池里面有足够的水,就满足了水箱1的要求。
现在水箱1有1GB的活水,而水池里面只剩下3GB的水了。
水箱1里面多丢了些鱼(启动新的应用),原来1GB的水不够用了,于是水箱1就继续向水池要水,水池HOST里面还有足够的水,就又满足了水箱1的要求。
现在水箱1里面有3GB 的水,而水池里面只剩下1GB的水了。
解释:要注意的是,此时VM1里面的应用程序都是活动的(active),所以这些内存都属于活跃状态,叫做活动内存(Active Memory)。
2、VM闲置的memory不会主动归还HOST
经过了一段时间以后,水箱1里面的鱼被捕走了,现在水箱1不需要那么多水也足够养活剩下的鱼了。
但是水池并不知道水箱1的状况。
于是水箱1还是有那么多水。
解释:VM1的某些应用结束后,释放了部分内存,但是这些内存释放动作是在VM的Guest OS层面释放的,故Host并不知道有内存被释放了,这些内存没有归还Host,仍然由VM1
占有。
VM1中就有一部分内存属于idle(空闲的)memory,另外一些正在使用的内存就是active memory。
当然,就VM1自己的Guest OS看起来,有3GB空闲内存(idle memory),1GB的活动内存;而此时就Host看来,只看见有3GB内存是分配给了VM1的。
Host通过VMware Tools中的驱动,每隔一定的时间(ESX4中默认是60秒)去扫描一下VM1的内存使用状态,以了解活动内存(active memory)的情况。
3、Balloon或Swap内存调度机制
水箱2中养鱼了(VM2开机),水箱2也开始从水池中抽水。
但是水池HOST里面的水不能枯竭,因此水池有警戒水位,第一条警戒水位是6%,当下降到第一警戒水位以下并仍然在不停下降时,就要开动调水机制从其他水箱反抽水。
解释:VM2开机时也需要1GB内存,在启动时,它也不断向Host请求内存。
Host则将自己的内存源源不断地分配给VM2,直到下降到第一条警戒位6%。
Host内存有4种状态,
分别是High, Soft, Hard和Low,它们间的分界线分别是6%, 4%, 2%和1%。
可用内存高于6%时,不会启动Balloon或Swap机制。
当低于6%向4%逼近时,Balloon机制就启动了。
向哪个水箱抽水呢?谁的水最富裕就向谁抽。
解释:如何判断呢?刚才我们说过,Host每隔一定时间就会扫描Guest OS的内存使用状况,此时,Host会计算(VM tools)每个VM的份额内存比ρ,对ρ最小的那台虚机启动气球驱动,气球开始膨胀。
于是,气球开始膨胀,并将多余的水挤出水箱。
解释:Balloon驱动如同普通驱动那样,不断向Guest OS索取内存,Guest OS尽自己可能满足气球驱动,并优先将空闲部分的内存分配给它,注意,此时可能出现Guest OS自己的物理内存不足,并引起Guest OS的paging(内存分页)机制,将一部分内存page out (页出)到自己的swap中。
这个例子中,VM1还有很多空闲内存,因此足够让主机回收并满足VM2的需求。
主机将比较气球膨胀获得的这部分内存的地址,如果原先是分配给VM1独享的,(也就是没有TPS共享),那么就可以收回。
主机将不停的通过气球驱动收回内存,收回的目标是保持至少6%的内存。
注意:此时内存没有出现争用情况,因此shares仍然没有起作用,但是Overcommitment 是存在的,所以会有reclaim,会有ballooning。
Ballooning回收内存是比较慢的,通常需要几分钟。
如果主机可用内存池的内存减少速度大于气球驱动返还主机的内存,那么可用内存会进一步下降,当突破4%的第2警戒线时,进入到hard状态,主机就会启用第2种回收机制——swapping(交换),将VM1的一部分物理内存交换到swap文件中,以加快回收内存的速度。
目的是将可用内存保持在4%的警戒线以上。
如果可用内存继续下降到2%以下,进入到low状态的时候,ESX不仅会继续加速Swapping,还会阻止其上所有VM的内存请求。
现在,情况又发生了变化,水箱2中的鱼越来越多了,它不停地向水池要水,而水池也通过气球驱动,不停地将水箱1中的空闲内存挤出来,直到水箱1和2的总需求量大于了水池能供给的水量。
水池再也不能提供更多的水了,只能部分满足2个水箱的要求了。
不够的部分怎么办?用一些脏水(swap)来满足。
脏水虽然脏(swap内存速度很慢,注意:硬盘访问时间是以毫秒(ms,千分之一秒)计算,而内存访问时间以纳秒(ns,十亿分之一)计算,两者相差100万倍。
),鱼在脏水里面生存的很困难,但毕竟还是有水的,不至于因为没有足够的水而导致鱼死掉。
此时,VM1和VM2的active memory由2部分组成,1部分是获得的主机物理内存,另一部分是swap。
请注意,Guest OS是不知道自己的一部分物理内存是硬盘上的swap文件的。
当机器内存不足竞争开始的时候,shares开始起作用。
但是,请注意,如果IMT是0,对空闲内存不征税,由于4GB的VM1和4GB的VM2的份额都是40960,因此它们最终会拿到相同的物理内存2GB。
但是如果IMT是默认值,那么空闲内存的代价更大,那么这2台VM 会根据active内存数量的不同,获得不同数量的物理内存。