摘要 |
A system for an agnostic runtime architecture. The system includes a system emulation/virtualization converter, an application code converter, and a converter, wherein a system emulation/virtualization converter and an application code converter implement a system emulation process. The system converter implements a system and application conversion process for executing code from a guest image, wherein the system converter or the system emulator accesses a plurality of guest instructions that comprise multiple guest branch instructions, and assembles the plurality of guest instructions into a guest instruction block. The system converter also translates the guest instruction block into a corresponding native conversion block, stores the native conversion block into a native cache, and stores a mapping of the guest instruction block to corresponding native conversion block in a conversion look aside buffer. Upon a subsequent request for a guest instruction, the conversion look aside buffer is indexed to determine whether a hit occurred, wherein the mapping indicates the guest instruction has a corresponding converted native instruction in the native cache, and forwards the converted native instruction for execution in response to the hit. |
主权项 |
1. A system for an agnostic runtime architecture, comprising:
a system emulation/virtualization converter; an application code converter; and a converter wherein a system emulation/virtualization converter and a application code converter implement a system emulation process, and wherein the system converter implements a system and application conversion process for executing code from a guest image, wherein the system converter or the system emulator: accesses a plurality of guest instructions that comprise multiple guest branch instructions; assembles the plurality of guest instructions into a guest instruction block; translates the guest instruction block into a corresponding native conversion block; stores the native conversion block into a native cache; stores a mapping of the guest instruction block to corresponding native conversion block in a conversion look aside buffer; upon a subsequent request for a guest instruction, indexes the conversion look aside buffer to determine whether a hit occurred, wherein the mapping indicates the guest instruction has a corresponding converted native instruction in the native cache; and forwards the converted native instruction for execution in response to the hit. |