1. A method for use in executing a software application that is executed by a target hardware platform, said method comprising: determining a hardware description language (HDL) description of the target hardware platform; configuring a programmable hardware component to be at least functionally equivalent to the target hardware platform based on the HDL description, such that compatibility of the software application with the programmable hardware component is achieved, including adding at least one additional assembly instruction that provides emulation acceleration to an assembly instruction set supported by the target hardware platform; executing, by the programmable hardware component, a native virtualization layer configured to route data between a first virtual I/O device that is associated with a first virtual machine (VM) within a first native virtual machine and a second virtual I/O device that is associated with a second native virtual machine; and executing the software application using the configured programmable hardware component.
2. A method according to claim 1 , wherein executing the software application comprises: executing the first virtual machine (VM) using the configured hardware component; and executing the software application using the first VM.