Compatibilidad con código binario

Para un programa compilado en un sistema operativo general, por lo general la compatibilidad binaria implica que no solo las CPU (conjunto de instrucciones) de las dos computadoras sean compatibles con los binarios, sino que también las interfaces y comportamientos del sistema operativo y las API, y las ABI correspondientes a estas API sean lo suficientemente iguales, es decir, "compatibles".

El término como compatible con versiones anteriores, también llamado retrocompatibilidad) implica, por lo general, compatibilidad con código de objeto.

En otros casos, se debe utilizar una versión general y portable del software para hacer que funcionen los programas binarios no compatibles.

Esto significa que son compatibles con ABI (para la interfaz binaria de aplicaciones).

Está disponible un software adicional, Wine, que hasta cierto punto hace eso.

A veces, la virtualización se proporciona con el SO host (o se puede obtener dicho software), lo que efectivamente hace que el SO host sea compatible con los programas.