Con la virtualización de CPU basada en software, el código de aplicación invitada se ejecuta directamente en el procesador, mientras que el código con privilegios de invitado se traduce y el código traducido se ejecuta en el procesador.

El código traducido es levemente más grande y, por lo general, se ejecuta de forma más lenta que la versión nativa. Por lo tanto, las aplicaciones invitadas, que tienen un pequeño componente de código con privilegios, se ejecutan con una velocidad muy parecida a la nativa. Las aplicaciones con un componente de código con privilegios significativo, como las llamadas del sistema, las capturas o las actualizaciones de tablas de las páginas, se ejecutan de forma más lenta en el entorno virtualizado.