Search results
Results from the WOW.Com Content Network
Two common full virtualization techniques are typically used: (a) binary translation and (b) hardware-assisted full virtualization. [1] Binary translation automatically modifies the software on-the-fly to replace instructions that "pierce the virtual machine" with a different, virtual machine safe sequence of instructions. [7]
In computing, binary translation is a form of binary recompilation where sequences of instructions are translated from a source instruction set to the target instruction set. In some cases such as instruction set simulation , the target instruction set may be the same as the source instruction set, providing testing and debugging features such ...
Simics is built for high performance execution of full-system models, and uses both binary translation and hardware-assisted virtualization to increase simulation speed. It is natively multithreaded and can simulate multiple target (or guest) processors and boards using multiple host threads.
The Quick Emulator (QEMU) [4] is a free and open-source emulator that uses dynamic binary translation to emulate a computer's processor; that is, it translates the emulated binary codes to an equivalent binary format which is executed by the machine.
The OVPsim simulator is available as an OVP reference and is free for non-commercial usage. The simulator uses dynamic binary translation technology to achieve very high simulation speeds. More than a billion simulated instructions per second is possible, in some cases on regular desktop PC machines.
[citation needed] A well-tuned caching binary translation system may achieve comparable performance, and it does in the case of x86 binary translation relative to first generation x86 hardware assist, which merely made sensitive instructions trappable. [6] Effectively this gives a theorem with different sufficiency conditions. [citation needed]
Cross-platform virtualization is a form of computer virtualization that allows software compiled for a specific instruction set and operating system to run unmodified on computers with different CPUs and/or operating systems, through a combination of dynamic binary translation and operating system call mapping.
x86 virtualization is the use of hardware-assisted virtualization capabilities on an x86/x86-64 CPU.. In the late 1990s x86 virtualization was achieved by complex software techniques, necessary to compensate for the processor's lack of hardware-assisted virtualization capabilities while attaining reasonable performance.