虚拟地址支持的虚拟机中的直接映射的文件制造技术

技术编号:18580419 阅读:19 留言:0更新日期:2018-08-01 14:46
将文件映射在主机虚拟地址支持的虚拟机中。一种方法包括从客虚拟机接收对来自主机的文件的请求。该方法进一步包括在主机处确定文件可被直接映射到请求访问该文件的虚拟机的物理存储器位置。该方法进一步包括在主机处提供由主机虚拟存储器中的文件映射支持的客机物理存储器。

Virtual address supported direct mapping files in virtual machines

Map files to the virtual machine supported by the host virtual address. One way is to receive requests for files from hosts from the guest virtual machine. The method further includes determining at the host where the file can be mapped directly to the physical memory location of the virtual machine requesting access to the file. The method further includes providing aircraft physical memory supported by file mapping in the host virtual memory at the host computer.

【技术实现步骤摘要】
【国外来华专利技术】虚拟地址支持的虚拟机中的直接映射的文件背景背景和相关技术计算机和计算系统已经影响了现代生活的近乎每一个方面。计算机通常涉及工作、休闲、保健、运输、娱乐、家政管理等。在现代,计算系统可实现虚拟计算的概念。在虚拟计算中,主物理机(在下文被称为“主机”)可主控多个客虚拟机(在下文被称为“客机”或“虚拟机”)。虚拟机共享主机上的物理资源。例如,虚拟机使用主机处的物理处理器和物理存储器来实现虚拟机。当前,虚拟机的物理存储器按一对一的方式由主机中的非分页物理存储器分配来支持。管理虚拟机的虚拟化堆栈从主机中分配这种类型的存储器,并且主机在分配之后不具有对该存储器的控制。虚拟化堆栈在该存储器被分配之后对其进行完全地管理。其选择如何在各虚拟机之间分配存储器、是否使其从客机的角度来看可分页等等。增加主机上的虚拟机密度已经成为能够通过打包更多虚拟机(同时使这些虚拟机足够好地执行以运行其期望的工作负载)来更好地利用服务器硬件的虚拟化解决方案的重要部分。当前虚拟机密度主要受主机存储器大小的限制。因此,例如,如果主机具有可被分配给虚拟机的12GB的RAM,则该主机只能主控其中所有虚拟机的全部存储总共为12GB或更小的一些虚拟机。本文中所要求保护的主题不限于解决任何缺点或仅在诸如以上所描述的环境那样的环境中操作的各实施例。相反,提供本背景仅用于解说其中可实践本文中所描述的一些实施例的一个示例性
简要概述本文中所例示的一个实施例包括一种可在虚拟计算环境中实践的方法。该方法包括用于映射主机虚拟地址支持的虚拟机中的文件的动作。该方法包括从客虚拟机接收对来自主机的文件的请求。该方法进一步包括在主机处确定文件可被直接映射到请求访问该文件的虚拟机的物理存储器位置。该方法进一步包括在主机处提供由主机虚拟存储器中的文件映射支持的客机物理存储器。提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。附加特征和优点将在以下描述中提出,且部分会从描述中显而易见,或者可以通过实施本文的原理来获悉。本专利技术的特征和优点可以通过在所附权利要求书中特别指出的工具和组合来实现和获得。本专利技术的特征从以下描述和所附权利要求书中将更完全显而易见,或者可以通过如下文所述实施本专利技术而获悉。附图简述为了描述可获得本主题的上述和其它优点和特征的方式,将通过参考附图中示出的本主题的具体实施方式来呈现以上简要描述的本主题的更具体描述。应该理解,这些附图仅描绘了各典型实施例,因此其不应被认为是对范围的限制,各实施例将通过使用附图用附加特征和细节来描述并解释,在附图中:图1解说了包括用于虚拟机的虚拟地址支持的物理存储器的系统;图2解说了将来自主机的客虚拟机可访问的文件直接映射到由该主机处的文件映射支持的客机物理地址空间中的示例;以及图3解说了将文件映射在主机虚拟地址支持的虚拟机中的方法。详细描述每当在虚拟地址(VA)支持的虚拟机(VM)中运行的代码(如下面将更详细地解说地)从盘访问文件页(参见例如存储在图2中所解说的盘140上的文件136)时,该文件页的内容被从主机(例如,从虚拟硬盘驱动器(VHD)等)转移到VM的物理存储器中(其中该VM是在主机上运行的客机),该VM的物理存储器进而由主机进程中所分配的虚拟存储器支持。如果存在运行在主机上的多个此类VM并且它们访问主机上的相同文件,则两个不同的物理页在主机上被消耗以支持包含相同文件数据的客机物理页。因为那些主机页具有完全相同的内容,所以有机会降低存储器使用。传统上,这样做的方式是使用存储器管理器页组合器功能性来对主机上的完全相同的页进行组合,但这具有在用于创建各个个体页并随后将这些页组合成共享页的资源消耗方面的成本。此外,这可能引入在创建各个个体页时和/或在页被组合之前发生的存储器使用高峰。例如,考虑其中多个完全相同的VM被几乎同时地创建的情形。多个完全相同的VM的创建将导致在多个VM的创建时间处的主机物理存储器使用高峰,其中大部分所使用的存储器具有完全相同的内容。各实施例可被实现,其中来自主机的客VM可访问的文件可被直接映射到客机物理地址空间中并且由主机上的常规文件映射支持。附加地或替换地,多个VM可直接映射主机上的相同文件,且因此立即共享访问这些文件所需的主机物理页,而不会消耗附加的客机物理页。附加地或替换地,直接映射的文件可以是VM可同时从主机上的物理页执行且共享主机上的物理页的可执行文件。作为基础,下面解说客机物理存储器如何被映射到主机虚拟存储器。该功能性可被用来直接映射用于由主机虚拟地址支持的客虚拟机的文件。现在参考图1,示出了主机102。主机102可以是能够主控多个客虚拟机的物理主机服务器机器。主机102包括管理程序104。管理程序是管理主机上的虚拟机的一段计算机软件、固件和/或硬件。主机102包括主机部分106和客机部分108。主机部分106主控主机102本身的用户模式进程。客机部分108主控客虚拟机。在所例示的示例中,客机部分108主控客机110-1和客机110-2。虽然仅例示了两个客虚拟机,但是应当领会,主机102能够主控比这更多的虚拟机。可实现其中用户模式进程被实现在主机部分106中以提供用于支持客机部分108中的客虚拟机的虚拟存储器116的各实施例。在所例示的特定示例中,为每个客机创建用户模式进程。因此,图1例示了分别对应于虚拟机110-1和110-2的用户模式进程112-1和112-2。然而,应当领会,单个用户模式进程可被用于多个虚拟机,或者多个进程可被用于单个虚拟机。替代地,虚拟存储器116可以按除了使用如将在下文例示的用户模式进程以外的其他方式来被实现。虚拟化堆栈114在将主控虚拟机的指定的用户模式进程的地址空间中分配常规虚拟存储器(例如,分别在进程112-1和112-2中的虚拟存储器116-1和116-2)。主机存储器管理器118可将该存储器作为任何其他虚拟分配来对待,这意味着该存储器可被分页,可以出于满足系统上别处的毗邻的存储器分配的目的而改变对该存储器进行支持的物理页,可以与另一进程中的另一虚拟分配(其进而可以是另一虚拟机支持分配或者系统上的任何其他分配)共享这些物理页。与此同时,使主机存储器管理器根据需要来特别地对待虚拟机支持虚拟分配的许多优化是可能的。而且,如果虚拟化堆栈114选择将性能优先于密度,则其可执行由操作系统存储器管理器118支持的许多操作,诸如将页锁定在存储器120中,以确保虚拟机将不会经历针对那些部分的分页。类似地,可以根据需要使用大型页来为虚拟机提供甚至更多的性能。给定的虚拟机(例如,虚拟机110-1)可以使其客机物理存储器(例如,客机物理存储器122-1)中的所有的客机物理存储器地址由虚拟存储器(例如,虚拟存储器116-1)来支持,或者可以使其客机物理存储器(例如,客机物理存储器122)中的客机物理存储器地址中的一些由虚拟存储器(例如,虚拟存储器116)来支持,且一些由诸如从主机存储器120作出的非分页物理存储器分配之类的传统机制来支持。当新虚拟机(例如,虚拟机110-1)被创建时,虚拟化堆栈114使用用户模式进程(例如,用户模式进程112-1)来本文档来自技高网...

【技术保护点】
1.一种系统,包括:一个或多个处理器;以及一个或多个其上存储有指令的计算机可读介质,所述指令能够由所述一个或多个处理器执行以将计算机系统配置成比较各循环进程,所述指令包括能够执行以将所述计算机系统配置成至少执行以下的指令:从客虚拟机接收对来自主机的文件的请求;在所述主机处确定所述文件能够被直接映射到请求访问所述文件的任何虚拟机的物理存储器位置;以及在所述主机处将由主机物理存储器位置支持的主机虚拟存储器文件映射所支持的客机物理存储器提供给所述客虚拟机以用于所述文件。

【技术特征摘要】
【国外来华专利技术】2015.11.02 US 62/249,823;2016.05.16 US 15/155,9641.一种系统,包括:一个或多个处理器;以及一个或多个其上存储有指令的计算机可读介质,所述指令能够由所述一个或多个处理器执行以将计算机系统配置成比较各循环进程,所述指令包括能够执行以将所述计算机系统配置成至少执行以下的指令:从客虚拟机接收对来自主机的文件的请求;在所述主机处确定所述文件能够被直接映射到请求访问所述文件的任何虚拟机的物理存储器位置;以及在所述主机处将由主机物理存储器位置支持的主机虚拟存储器文件映射所支持的客机物理存储器提供给所述客虚拟机以用于所述文件。2.根据权利要求1所述的系统,其特征在于,确定所述文件能够被直接映射到物理存储器位置包括接收客机希望所述文件被直接映射的指示。3.根据权利要求1所述的系统,其特征在于,确定所述文件能够被直接映射到物理存储器位置包括确定所述文件是被用来实例化多个虚拟客机的组件。4.根据权利要求1所述的系统,其特征在于,所述文件是盘上的压缩文件,并且其中所述一个或多个计算机可读介质进一步在其上存储有指令,所述指令能够由所述一个或多个处理器执行以将所述计算机系统配置成将所述文件从盘扩展到所述主机处的所述物理存储器位置处的物理存储器中。5.根据权利要求1所述的系统,其特征在于,所述一个或多个计算机可读介质进一步在其上存储有指令,所述指令能够由所述一个或多个处理器执行以将所述计算机系统配置成接收对所述文件进行写入的用户输入,并且作为结果,创建被写入且是易失性的且不被持久保持的一个或多个专用部分。6.根据权利要求1所述的系统,其特征在于,所述一个或多个计算机可读介质进一步在其上存储有指令,所述指令能够由所述一个或多个处理器执行以将所述计算机系统...

【专利技术属性】
技术研发人员:A·U·基什安M·伊伊京L·王K·M·布罗斯Y·M·巴克
申请(专利权)人:微软技术许可有限责任公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1