发明名称 |
Methods and apparatus to validate translated guest code in a dynamic binary translator |
摘要 |
Methods, apparatus, systems and articles of manufacture are disclosed to validate translated guest code in a dynamic binary translator. An example apparatus disclosed herein includes a translator to generate a first translation of code to execute on a host machine, the first translation of the guest code to facilitate creating a first translated guest code, and the translator to generate a second translation of the translated guest code to execute on the host machine. The example apparatus also includes a translation versions manager to identify a first host machine state based on executing a portion of the first translation, and the translation versions manager to identify a second host machine state based on executing a portion of the second translation. The example system also includes a validator to determine a state divergence status of the second translation based on a comparison between the first host machine state and the second host machine state. |
申请公布号 |
US9223553(B2) |
申请公布日期 |
2015.12.29 |
申请号 |
US201314125263 |
申请日期 |
2013.09.26 |
申请人 |
INTEL CORPORATION |
发明人 |
Venkatasubramanian Girish;Mangla Chaitanya;Hoflehner Gerolf F.;Schuchman Ethan |
分类号 |
G06F9/45;F01D5/08;F02C7/18;G06F9/445 |
主分类号 |
G06F9/45 |
代理机构 |
Hanley, Flight & Zimmerman, LLC |
代理人 |
Hanley, Flight & Zimmerman, LLC |
主权项 |
1. An apparatus to validate translated guest code in a dynamic binary translator, comprising:
a memory to store executable instructions that when executed by a processor causes: a translator to generate a first translation of guest code to execute on a host machine, the first translation of the guest code to facilitate creating a first translated guest code, and the translator to generate a second translation of the translated guest code to execute on the host machine; a translation versions manager to identify a first host machine state based on execution of a portion of the first translation, and the translation versions manager to identify a second host machine state based on execution of a portion of the second translation; and a validator to determine a state divergence status of the second translation based on a comparison between the first host machine state and the second host machine state; a chain optimizer to:
update an execution chain to include the first translation;increment a first iteration count when the first translation is executed;identify a first performance counter that corresponds to the first translation;update the execution chain to include the second translation;increment a second iteration count when the second translation is executed;compare the first performance counter to a second performance counter that corresponds to the second translation; andbased on the comparison, discard the second translation when the first performance counter is greater than the second performance counter. |
地址 |
Santa Clara CA US |