【技术实现步骤摘要】
【国外来华专利技术】支持虚拟机环境中的地址转换的方法及装置
—^:来i兌,本专利技术的实施例涉及虚拟机,更具体来i兌, 涉及支持虚拟机环境中的地址转换。
技术介绍
传统的虛拟机监控器(VMM)通常在计算机上运行,并为 其它软件提供一个或多个虚拟机的抽象。各虚拟机可用作独立平台, 运行它自己的客人操作系统(即,VMM接管的操作系统(OS》和其 它软件,它们统称为客人软件。客人软件预期像它在专用计算机而不 是虚拟机上运行一样工作。也就是说,客人软件预期将控制各种事件, 并且有权访问诸如物理存储器和存储器映射输入/输出(I/0)装置之类 的硬件资源。例如,客人软件预期将保持对地址转换操作的控制,并 且具有分配物理存储器、提供对客人应用以及客人应用之间的保护、 使用各种分页技术等的能力。但是,在虚拟机环境中,VMM应当能 够具有对计算机资源的最终控制,以便提供对虚拟机以及虚拟机之间 的保护。附图说明 在附图的各图中,以举例而不是限定的方式说明本发 明,附图中相似的参考标号表示类似的元件,附图中 图1说明本专利技术可在其中工作的虚拟机环境的一个实施例; 图2说明根据本专利技术的一个实施例的虛拟TLB的操作; 图3A和图3B说明根据本专利技术的两个备选实施例、创建和维护影子PT分级结构的元数据的过程; 图4是用于同步客人转换数据结构和影子转换数据结构 的过程的 一个实施例的流程 图5是用于维护影子转换数据结构的元数据的过程的一 个实施例的流程 图6是用于帮助改变地址空间的过程的一个实施例的流 程 图7是用于同步指定地址的两个转换数椐结构的条目的 过程的 一个实施例的流程 图8是用于从V ...
【技术保护点】
一种方法,包括: 接收由于有关转换后备缓冲器(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)列表,以及所述一个或多个活动目录列表包括标识指向...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。