[发明专利]在虚拟机环境中检测自旋循环有效
申请号: | 201310103445.8 | 申请日: | 2008-03-28 |
公开(公告)号: | CN103207803A | 公开(公告)日: | 2013-07-17 |
发明(设计)人: | G.奈格尔;R.L.坎贝尔;J.B.克罗斯兰德;L.K.普蒂耶达思;S.A.费希尔;S.M.贝内特;A.V.安德森;G.格尔宗 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/455 | 分类号: | G06F9/455 |
代理公司: | 中国专利代理(香港)有限公司 72001 | 代理人: | 朱海煜 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 环境 检测 自旋 循环 | ||
本分案申请的母案申请日为2008年3月28日、申请号为200810100386.8、发明名称为“在虚拟机环境中检测自旋循环”。
技术领域
本发明涉及信息处理领域,特别是涉及平台虚拟化领域。
背景技术
通常,信息处理系统中的虚拟化的概念允许一个或多个操作系统的多个实例(一“OS”的每一个)在单个信息处理系统上运行,尽管每一个OS都被设计成拥有对该系统及其资源的完全的、直接的控制。通常,通过使用软件(例如,虚拟机监视器,或者“VMM”)来实现虚拟化,以便将“虚拟机”(“VM”)提供给每个OS,所述“虚拟机”具有虚拟资源,包括可以由OS完全且直接地控制的一个或多个虚拟处理器,同时VMM维持用于实现虚拟化策略(如在VM(“虚拟化环境”或“虚拟机环境”)之间共享和/或分配物理资源)的系统环境。运行在VM上的每一个OS和任何其它软件,被称为“客户”(“guest”)或者“客户软件”(“guest software”),而“主机”(“host”)或“主机软件”(“hostsoftware”)是例如运行在虚拟化环境之外的VMM这样的软件。
信息处理系统中的物理处理器可以支持虚拟化,例如,通过支持指令进入虚拟化环境以在VM中的虚拟处理器(即,在VMM施加的约束下的物理处理器)上运行客户。在虚拟化环境中,某些事件、操作和情况,例如外部中断或访问特许的寄存器或资源的尝试,可能被截取(intercept),就是说,导致处理器退出虚拟化环境,使得VMM可以操作,以便例如实现虚拟化策略。物理处理器还可支持其它的指令以维持虚拟化环境,并且可以包括指示或控制物理处理器的虚拟化能力的存储器或寄存器位。
物理处理器还可以支持“暂停(pause)”指令以将延迟插入指令流中。暂停指令可以用在自旋循环(spin loop)中,来减慢循环的执行以节省功率和/或阻止处理器在每次执行循环时用相同的变量填充不同的负载缓冲器。处理器可以被设计成由虚拟机来检测暂停指令的执行,并且使处理器退出所述虚拟机并进入不同的虚拟机(假设运行在第一个虚拟机中的客户处在自旋循环中,在该自旋循环期间,在第二个虚拟机中运行的客户能够更加有效的使用处理器资源)。
发明内容
根据本发明的第一方面,提供了一种用于执行虚拟化的处理器,包括:
执行单元,用于执行暂停指令;
时间戳计数器,用于测量暂停指令被执行的当前时间;
检测逻辑,用于跟踪第一值和第二值,所述第一值用于指示在客户的自旋循环内执行所述暂停指令的第一时间,所述第二值用于指示所述暂停指令被执行的最近时间,以及用于基于当前时间和所述第二值之间的差与阈值的比较来检测所述客户是否在所述自旋循环中;以及
虚拟化逻辑,用于响应检测到所述客户正在执行所述自旋循环以及所述当前时间和所述第一值之间的差超过窗口值而将对所述处理器的控制从所述客户转移到主机。
根据本发明的第二方面,提供了一种用于执行平台虚拟化的方法,包括:
检测客户是否正在处理器上执行自旋循环,包括将两个暂停指令的执行之间的时间段与阈值进行比较;以及
响应确定所述客户正在执行所述自旋循环,而将对所述处理器的控制从所述客户转移到主机。
根据本发明的第三方面,提供了一种系统,包括:
处理器,包括用于执行暂停指令的执行单元,用于测量暂停单元被执行的当前时间的时间戳计数器,检测逻辑,用于跟踪第一值和第二值,所述第一值用于指示在客户的自旋循环内执行所述暂停指令的第一时间,所述第二值用于指示所述暂停指令被执行的最近时间,以及用于基于当前时间和所述第二值之间的差与阈值的比较来检测所述客户是否在所述自旋循环中,以及虚拟化逻辑,用于响应检测到所述客户正在执行所述自旋循环以及所述当前时间和所述第一值之间的差超过窗口值而将对所述处理器的控制从所述客户转移到主机;以及
与所述处理器耦合的系统存储器。
附图说明
在附图中,作为示例而非限制来图解说明本发明。
图1图解说明了在虚拟化平台中的本发明的一实施例。
图2图解说明了用于在虚拟机环境中检测自旋循环的方法中的本发明的一实施例。
具体实施方式
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310103445.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种双面垫子的制造设备及生产工艺
- 下一篇:气冷电机及新能源汽车电池加热装置