[发明专利]用于进行重放执行的方法和设备有效
申请号: | 201380044851.X | 申请日: | 2013-09-26 |
公开(公告)号: | CN104541244B | 公开(公告)日: | 2017-09-15 |
发明(设计)人: | J.E.戈特施利奇;K.丹内;C.L.佩雷拉;G.A.波卡姆;R.卡萨;胡世亮;T.克拉尼希 | 申请(专利权)人: | 英特尔公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38;G06F9/46 |
代理公司: | 中国专利代理(香港)有限公司72001 | 代理人: | 杨美灵,张懿 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 进行 重放 执行 方法 系统 | ||
1.一种用于执行重放执行的方法,所述方法包括:
启动程序的执行,所述程序具有多个指令集,并且每个指令集具有指令的多个组块;
在执行前截取所述指令的多个组块的一个组块的指令;
确定所述一个组块是否为活动组块;以及
响应所述一个组块是所述活动组块,执行所述一个组块的指令。
2.如权利要求1所述的方法,其中每个指令集对应于线程。
3.如权利要求2所述的方法,还包括:
确定所述一个组块的指令是否为所述线程中的第一指令;
响应所述一个组块的指令是所述第一指令,将新线程标识指派到所述线程;以及
将所述新线程标识映射到用于所述线程的原标识。
4.如权利要求2-3任一项所述的方法,还包括:
识别所述一个组块是否为所述指令的多个组块的最后组块;以及
如果所述一个组块是所述最后组块,则在所述一个组块执行后在自由模式中操作所述线程。
5.如权利要求1-3任一项所述的方法,还包括:
响应所述一个组块不是所述活动组块,暂停所述一个组块的指令,直至所述一个组块是所述活动组块。
6.如权利要求1-3任一项所述的方法,其中所述指令的多个组块的所述活动组块当前正在由在处理器上执行的重放模块执行。
7.如权利要求1-3任一项所述的方法,还包括:
确定程序的所述执行是否匹配记录的执行。
8.如权利要求1-3任一项所述的方法,其中所述截取所述一个组块的指令由在处理器上执行的虚拟机单元执行。
9.如权利要求1-3任一项所述的方法,还包括:
检索带有时间戳的对应于所述指令的多个组块的多个记录的日志文件;以及
根据所述时间戳将所述指令的多个组块排序以获得有序组块。
10.如权利要求9所述的方法,其中所述确定所述一个组块是否为活动组块是至少部分地基于所述有序组块。
11.一种用于执行重放执行的设备,包括:
在处理器上执行的虚拟机单元,所述虚拟机单元配置成在执行前截取指令的多个组块的一个组块的指令;以及
在所述处理器上执行的重放模块,所述重放模块配置成:
启动程序的执行,所述程序具有多个指令集,并且每个指令集具有所述指令的多个组块;
确定所述一个组块是否为活动组块;以及
响应所述一个组块是所述活动组块,执行所述一个组块的指令。
12.如权利要求11所述的设备,其中每个指令集对应于线程。
13.如权利要求12所述的设备,其中所述重放模块还配置成:
确定所述一个组块的指令是否为所述线程中的第一指令;
响应所述一个组块的指令是所述第一指令,将新线程标识指派到所述线程;以及
将所述新线程标识映射到用于所述线程的原标识。
14.如权利要求12-13任一项所述的设备,其中所述重放模块还配置成:
识别所述一个组块是否为所述指令的多个组块的最后组块;以及
如果所述一个组块是所述最后组块,则在所述一个组块执行后在自由模式中操作所述线程。
15.如权利要求11-13任一项所述的设备,其中所述重放模块还配置成:
响应所述一个组块不是所述活动组块,暂停所述一个组块的指令,直至所述一个组块是所述活动组块。
16.如权利要求11-13任一项所述的设备,其中所述指令的多个组块的所述活动组块当前正在由所述重放模块执行。
17.如权利要求11-13任一项所述的设备,还包括:
在所述处理器上执行的验证模块,所述验证模块配置成:确定程序的所述执行是否匹配记录的执行。
18.一种用于执行重放执行的设备,包括用于执行权利要求1-3任一项所述的方法的部件。
19.如权利要求18所述的设备,其中用于执行所述方法的所述部件包括处理器和存储器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于英特尔公司,未经英特尔公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201380044851.X/1.html,转载请声明来源钻瓜专利网。