Al momento de emular la CPU, el programa traduce el código máquina del software emulado en código nativo de la máquina emuladora y lo escribe en una caché con permisos de ejecución y escritura (generalmente en UNIX o en sistemas compatibles con POSIX se asigna este permiso con la función mprotect()).