Universal binaries

Universal binaries ou UB est le terme utilisé par Apple pour désigner des applications capables de s'exécuter nativement sur des processeurs utilisant un jeu d'instructions différent. Elles sont utilisées lors des transitions effectuées sur ses produits, vers Intel puis vers ARM. Elles ne sont compatibles qu'avec certaines plateformes d'Apple.

Le système détermine si une application est en Universal binaries grâce à son en-tête. Une application en Universal binaries contient deux fichiers binaires, un pour chaque type de processeur. Lorsque le système lance une application en Universal binaries, il choisit le bon fichier binaire et l'exécute.

Toutes les applications ne sont pas en Universal binaries. Pour une application qui n'est pas en Universal binaries, le système utilise Rosetta pour traduire le fichier binaire de l'application compilé pour un certain jeu d'instructions en un code exécutable pour des processeurs dans un jeu d'instructions différent.