[发明专利]在虚拟机环境中检测自旋循环有效
申请号: | 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 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 虚拟机 环境 检测 自旋 循环 | ||
1.一种用于执行虚拟化的处理器,包括:
执行单元,用于执行暂停指令;
时间戳计数器,用于测量暂停指令被执行的当前时间;
检测逻辑,用于跟踪第一值和第二值,所述第一值用于指示在客户的自旋循环内执行所述暂停指令的第一时间,所述第二值用于指示所述暂停指令被执行的最近时间,以及用于基于当前时间和所述第二值之间的差与阈值的比较来检测所述客户是否在所述自旋循环中;以及
虚拟化逻辑,用于响应检测到所述客户正在执行所述自旋循环以及所述当前时间和所述第一值之间的差超过窗口值而将对所述处理器的控制从所述客户转移到主机。
2.如权利要求1所述的处理器,其中,所述检测逻辑也用于基于控制流改变来检测所述客户是否正在执行所述自旋循环。
3.如权利要求1所述的处理器,其中,所述检测逻辑也用于基于时间段内的暂停指令的计数来检测所述客户是否正在执行所述自旋循环。
4.如权利要求1所述的处理器,其中,所述处理器包括多核处理器。
5.如权利要求1所述的处理器,其中,所述处理器包括多线程处理器。
6.如权利要求1所述的处理器,进一步包括包含所述检测逻辑和所述虚拟化逻辑的控制逻辑。
7.一种用于执行平台虚拟化的方法,包括:
检测客户是否正在处理器上执行自旋循环,包括将两个暂停指令的执行之间的时间段与阈值进行比较;以及
响应确定所述客户正在执行所述自旋循环,而将对所述处理器的控制从所述客户转移到主机。
8.如权利要求7所述的方法,其中,检测所述客户是否正在执行所述自旋循环的步骤包括以下步骤之一:
比较两个暂停指令的指令指针;
检测控制流改变;以及
对时间段内的暂停指令的数量计数。
9.如权利要求7所述的方法,其中,响应确定所述客户正在执行所述自旋循环而将对所述处理器的控制从所述客户转移到主机包括:响应确定所述客户已在执行比所允许的时间段长的自旋循环而转移控制。
10.一种系统,包括:
处理器,包括用于执行暂停指令的执行单元,用于测量暂停指令被执行的当前时间的时间戳计数器,检测逻辑,用于跟踪第一值和第二值,所述第一值用于指示在客户的自旋循环内执行所述暂停指令的第一时间,所述第二值用于指示所述暂停指令被执行的最近时间,以及用于基于当前时间和所述第二值之间的差与阈值的比较来检测所述客户是否在所述自旋循环中,以及虚拟化逻辑,用于响应检测到所述客户正在执行所述自旋循环以及所述当前时间和所述第一值之间的差超过窗口值而将对所述处理器的控制从所述客户转移到主机;以及
与所述处理器耦合的系统存储器。
11.如权利要求10所述的系统,其中,所述检测逻辑也用于基于控制流改变来检测所述客户是否正在执行所述自旋循环。
12.如权利要求10所述的系统,其中,所述检测逻辑也用于基于时间段内的暂停指令的计数来检测所述客户是否正在执行所述自旋循环。
13.如权利要求10所述的系统,其中,所述处理器包括多核处理器。
14.如权利要求10所述的系统,其中,所述处理器包括多线程处理器。
15.如权利要求10所述的系统,进一步包括包含所述检测逻辑和所述虚拟化逻辑的控制逻辑。
16.如权利要求10所述的系统,其中,所述系统存储器包括用于存储所述客户的状态的虚拟机控制结构。
17.如权利要求16所述的系统,其中,所述虚拟机控制结构用于存储虚拟机监视器的状态。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310103445.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种双面垫子的制造设备及生产工艺
- 下一篇:气冷电机及新能源汽车电池加热装置