当前位置: 首页 > 专利查询>英特尔公司专利>正文

支持虚拟机环境中的地址转换的方法及装置制造方法及图纸

技术编号:2834711 阅读:249 留言:0更新日期:2012-04-11 18:40
在一个实施例中,一种方法包括接收由于有关转换后备缓冲器(TLB)的特许事件而从虚拟机(VM)转移的控制,以及确定客人转换数据结构中的哪些条目已被VM修改。根据从虚拟机监控器(VMM)维护的影子转换数据结构中提取的元数据以及与影子转换数据结构中的条目关联的属性进行确定。该方法还包括使对应于客人转换数据结构中的已修改条目的影子转换数据结构中的条目与客人转换数据结构中的已修改条目同步。

【技术实现步骤摘要】
【国外来华专利技术】支持虚拟机环境中的地址转换的方法及装置
—^:来i兌,本专利技术的实施例涉及虚拟机,更具体来i兌, 涉及支持虚拟机环境中的地址转换。
技术介绍
传统的虛拟机监控器(VMM)通常在计算机上运行,并为 其它软件提供一个或多个虚拟机的抽象。各虚拟机可用作独立平台, 运行它自己的客人操作系统(即,VMM接管的操作系统(OS》和其 它软件,它们统称为客人软件。客人软件预期像它在专用计算机而不 是虚拟机上运行一样工作。也就是说,客人软件预期将控制各种事件, 并且有权访问诸如物理存储器和存储器映射输入/输出(I/0)装置之类 的硬件资源。例如,客人软件预期将保持对地址转换操作的控制,并 且具有分配物理存储器、提供对客人应用以及客人应用之间的保护、 使用各种分页技术等的能力。但是,在虚拟机环境中,VMM应当能 够具有对计算机资源的最终控制,以便提供对虚拟机以及虚拟机之间 的保护。附图说明 在附图的各图中,以举例而不是限定的方式说明本发 明,附图中相似的参考标号表示类似的元件,附图中 图1说明本专利技术可在其中工作的虚拟机环境的一个实施例; 图2说明根据本专利技术的一个实施例的虛拟TLB的操作; 图3A和图3B说明根据本专利技术的两个备选实施例、创建和维护影子PT分级结构的元数据的过程; 图4是用于同步客人转换数据结构和影子转换数据结构 的过程的 一个实施例的流程 图5是用于维护影子转换数据结构的元数据的过程的一 个实施例的流程 图6是用于帮助改变地址空间的过程的一个实施例的流 程 图7是用于同步指定地址的两个转换数椐结构的条目的 过程的 一个实施例的流程 图8是用于从VMM维护的影子PT分级结构的工作集 中删除影子PT分级结构的过程的一个实施例的流程 图9是用于向影子PT分级结构的PD添加条目的过程的 一个实施例的流程 图10是用于从影子PT分级结构的PD中删除条目的过 程的一个实施例的流程 图11是用于向影子PT分级结构的PT添加条目的过程 的一个实施例的流程 图12是用于从影子PT分级结构的PT中删除条目的过 程的 一个实施例的流程 图13是用于监控影子PT分级结构的PTE的过程的一个 实施例的流程图;以及 图14是用于从影子PT分级结构的PTE中删除监控的过 程的 一个实施例的流程图。具体实施方式描述用于支持虚拟机环境中的地址转换的方法及装置。 为便于il明,在以下描述中陈述了大量具体细节,以便透彻地理解本 专利技术。然而,本领域的技术人员十分清楚,即使没有这些具体细节,也可以实施本专利技术。 按照对计算机系统的寄存器或存储器中的数据位的操作 的算法和符号表示来提供以下详细描述的一些部分。这些算法描述和表示是数据处理领域的技术人员用于向本领域的其他技术人员最有效 地传达其工作实质的方式。算法在此以及一般;陂认为是产生预期结果 的独立操作序列。操作是要求物理量的物理处理的那些操作。这些量 通常但不一定采取能够被存储、传送、组合、比较以及以其它方式处 理的电或》兹信号的形式。主要为了一般使用的原因,将这些信号称作 位、值、元素、符号、字符、项、数等,已经证明有时是方便的。 但应当记住,所有这些及类似的项均与适当的物理量关 联,并且只是应用于这些量的便捷标签。除非明确说明,否则从以下 论述中清楚地知道,在本专利技术中,采用诸如处理,,或计算或运 算或者确定等术语的论述可能指的是计算机系统或类似电子计算装置的动作和过程,所述计算机系统或类似电子计算装置处理表示 为计算机系统的寄存器和存储器中的物理(电子)量的数据并将其转换为同样表示为计算机系统存储器或寄存器或者其它这种信息存储、传 送或显示装置中的物理量的其它数据。 在对实施例的以下详细描述中,参照附图,作为说明, 附图中表示可实现本专利技术的具体实施例。附图中,相似的标号在若干 视图中描述实质上相似的组件。足够详细地描述这些实施例,使本领 域的技术人员能够实施本专利技术。可釆用其它实施例,并且可进行结构、 逻辑以及电气变更,而没有背离本专利技术的范围。此外,要理解,本发 明的各种实施例虽然不同,但不一定相互排斥。例如,在一个实施例 中描述的特定功能、结构或特性可包含在其它实施例中。因此,以下 详细描述不是限制性的,本专利技术的范围仅由所附权利要求以及权利要 求涵盖的全部等效范围来限定。 虽然以下实例可能描述了在执行单元和逻辑电路的上下 文中提供对虚拟机环境中的地址转换的支持,但是本专利技术的其它实施 例可通过软件来实现。例如,在一些实施例中,本专利技术可作为计算机 程序产品或软件来提供,它可包括其中已存储指令的机器或计算机可 读媒体,这些指令可用于对计算机(或其它电子装置)编程以执行根椐 本专利技术的过程。在其它实施例中,本专利技术的过程可能由包含用于执行 过程的硬连线逻辑的特定硬件组件来执行,或者由编程计算机组件和 定制硬件组件的任何组合来执行。 因此,机器可读々某体可包括用于存储或传送机器(例如计 算机)可读形式的信息的任何机构,但不限于软盘、光盘、压缩盘-只 读存储器(CD-ROM)以及磁光盘、只读存储器(ROM)、随机存取存储器 (RAM)、可擦可编程只读存储器(EPROM)、电可擦可编程只读存储器 (EEPROM)、磁或光卡、闪速存储器、基于因特网的传输、电、光、 声或其它形式的传播信号(例如栽波、红外信号、数字信号等)等等。 此外,设计可能经过从创建到;f莫拟直到制造的各种阶 段。表示设计的数据可用多种方式来表示设计。首先,如在才莫拟中有 用的那样,硬件可采用硬件描述语言或者另 一种功能描述语言来表 示。另外,采用逻辑和/或晶体管门电路的电路级冲莫型可在设计过程的 某些阶段产生。此外,在某个阶段,大部分设计达到表示硬件才莫型中 的各种装置的物理设置的数据级。在采用传统半导体制造技术的情况 中,表示硬件模型的数据可能是指定用于生产集成电路的掩模的不同 掩^t层上的各种特征是否存在的数据。在设计的任何表示中,数据可 存储在任何形式的机器可读々某体中。经调制或者以其它方式产生以传 送这种信息的光或电波、存储器或者磁或光存储装置、如盘可能是机 器可读々某体。这些々某体中的任一种可携带或表明设计或软件 信息。在传送表明或携带代码或设计的电载波以便执行电信号的复制、緩冲或重传时,制作新的副本。因此,通信提供商或网络提供商 可制作体现本专利技术的技术的产品(载波)的副本。 图1说明本专利技术可在其中工作的虚拟机环境100的一个 实施例。在这个实施例中,棵平台硬件116包括计算平台,它可能能 够例如运行标准操作系统(OS)或虚拟机监控器(VMM)、如VMM 112。通常以软件来实现的VMM 112可模拟棵机接口并将其 导出到高层软件。这种高层软件可包括标准或实时OS,可能是具有有 限操作系统功能性的高度拆开的操作环境,可能不包括传统OS工具, 等等。或者,例如,VMM 112可在另一个VMM之中或之上运行。 VMM例如可通过硬件、软件、固件或者通过各种技术的组合来实现。 平台硬件116可能是个人计算机(PC)、大型计算机、手 持装置、便携计算机、机顶盒或其它任何计算系统的。平台硬件116 包括处理器118和存储器120。处理器118可以是能够运行软件的任何类型的处理器, 诸如微处理器、数字信号处理器、微控制器等等。处本文档来自技高网...

【技术保护点】
一种方法,包括:    接收由于有关转换后备缓冲器(TLB)的特许事件而从虚拟机(VM)转移的控制;    根据从虚拟机监控器(VMM)维护的影子转换数据结构中提取的元数据以及与所述影子转换数据结构中的条目关联的属性,确定客人转换数据结构中的哪些条目已被所述VM修改;以及    使对应于所述客人转换数据结构中的已修改条目的所述影子转换数据结构中的条目与所述客人转换数据结构中的已修改条目同步。

【技术特征摘要】
【国外来华专利技术】US 2005-1-28 11/045,5241.一种方法,包括接收由于有关转换后备缓冲器(TLB)的特许事件而从虚拟机(VM)转移的控制;根据从虚拟机监控器(VMM)维护的影子转换数据结构中提取的元数据以及与所述影子转换数据结构中的条目关联的属性,确定客人转换数据结构中的哪些条目已被所述VM修改;以及使对应于所述客人转换数据结构中的已修改条目的所述影子转换数据结构中的条目与所述客人转换数据结构中的已修改条目同步。2. 如权利要求1所述的方法,其特征在于 所述客人转换数据结构由所述VM用于地址转换操作;以及 所述影子转换数据结构的内容由处理器用于在所述TLB中高速緩存地址转换。3. 如权利要求1所述的方法,其特征在于,还包括维护影子转换数据结构的工作集,所述工作集中的每个影子转换 数据结构与所述VM的多个活动进程之一关联;以及当启用与所迷多个活动进程之一关联的客人转换数据结构时,再 使用来自所述工作集的、与所述多个活动进程之一关联的影子转换数 据结构的内容。4. 如权利要求3所述的方法,其特征在于,所述特许事件是所述 VM启用不同客人转换数据结构的请求、所述客人转换数据结构的条 目与所述影子转换数据结构的条目之间的一个或多个不一致所引起的 页面错误、以及所述VM使转换后备緩冲器(TLB)中的 一个或多个地址 转换无效的请求其中的任一个。5. 如权利要求3所述的方法,其特征在于,还包括 确定所迷特许事件是页面错误、INVLPG指令以及启用新客人转换数据结构的请求其中的任一个; 根据所述新客人转换数据结构来创建新影子转换数椐结构;以及 从所述新影子转换数据结构中得出元数据。6. 如权利要求3所述的方法,其特征在于,还包括 确定所述VM的所述多个活动进程之一^皮去活;以及 从所述工作集中删除与被去活的所述活动进程关联的影子转换数据结构。7. 如权利要求3所述的方法,其特征在于,还包括 确定不再使用所述影子转换数据结构之一;以及 从所述工作集中删除所述影子转换数椐结构之一。8. 如权利要求l所迷的方法,其特征在于,所述元数椐包含向量 集、活动条目列表以及一个或多个活动目录列表。9. 如权利要求8所述的方法,其特征在于 所述集合中的各向量标识在所述客人转换数据结构的对应级用作页面的帧;所述活动条目列表标识映射在形成存在其影子转换数据结构的客 人转换数据结构时使用的页面的映射;以及所迷一个或多个活动目录列表标识引用通过其中可访问所述影子 转换数据结构的低级结构的高级映射结构。10. 如权利要求9所述的方法,其特征在于所述活动条目列表是活动页面表(PT)条目列表,所述活动PT条目 (PTE)列表标识映射来自所述客人转换数据结构的PT页面和PD页面 的所述影子转换数据结构中的PTE ,以及所述一个或多个活动目录列表包括活动页面目录(PD)条目列表, 所述活动PD条目(PDE)列表标识指向具有来自所述活动PTE列表的 PTE的PT的所述影子转换数据结构中的PDE。11. 如权利要求9所述的方法,其特征在于所述活动条目列表是活动页面表(PT)条目列表,所述活动PT条目 (PTE)列表标识映射页面映射4级(PML4)页面、页面目录指针(PDP)页 面、页面目录(PD)页面和PT页面中的任一个的映射;以及所述一个或多个活动目录列表包括包含引用具有活动PTE列表条 目的页面的PDE的活动PD条目(PDE)列表、包含引用具有活动PDE 列表条目的PD的活动PDPE条目的活动PDP条目(PDPE)列表、以及 包含映射具有来自所述活动PDPE列表的元素的PDP的条目的活动 PML4E条目(PML4E)列表。12. 如权利要求IO所述的方法,其特征在于,与所述影子转换数 据结构中的条目关联的所述属性包括与所迷影子转换数椐结构中的 PDE关联的访问属性以及与所述影子转换数据结构中的PTE关联的更 新属性。13. 如权利要求12所述的方法,其特征在于,确定所述客人转换 数据结构中的哪些条目已被所述VM修改包括从对应于^皮同步的活动PT分级结构的活动PDE列表中标识具有 设置为访问值的访问属性的一个或多个PDE;以及对于所标识PDE中的每个,从所述活动PTE列表中查找具有设置 为更新值的更新属性的对应PTE。14. 如权利要求13所述的方法,其特征在于,还包括 初始化所述访问属性;以及 初始化所述更新属性。15. —种方法,包括根据客人操作系统用于地址转换操作的客人页面表(PT)分级结构 来创建影子PT分级结构;以及从所述影子PT分级结构中得出元数椐,以便随后确定在所述影 子PT分级结构中表示的所述客人PT分级结构的哪些条目已4皮修改, 所述元数据包括标识映射所述客人操作系统用于形成所述客人PT分 级结构的页面的映射的活动条目列表、以及标识引用通过其中访问所 述影子PT分级结构的低级结构的高级映射结构的一个或多个活动目 录列表。16. 如权利要求15所述的方法,其特征在于 所迷活动条目歹'J表是标识映射来自所述客人I面和节面目录(PD)页面的所述影子PT分级结构中的PTE的活动PT条 目(PTE)列表,以及所述一个或多个活动目录列表包括标识指向...

【专利技术属性】
技术研发人员:A安德森
申请(专利权)人:英特尔公司
类型:发明
国别省市:US[美国]

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

1