Universal binaries
Universal binaries ou UB est la façon par laquelle Apple désigne une application qui peut s'exécuter nativement sur les processeurs PowerPC, Intel et Apple Silicon. Universal binaries a été présenté lors de la WWDC 2005 et WWDC 2020 à l'occasion de l'annonce du passage de PowerPC vers Intel et d'Intel vers Apple Silicon. 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 fonctionnant avec un processeur Intel utilise Rosetta pour traduire le fichier binaire de l'application compilé pour les processeurs PowerPC en code exécutable par les processeurs Intel et en code exécutable pour les processeurs Apple Silicon. Depuis Mac OS X v10.7 (Lion), Rosetta n'est plus intégré.
À partir de la version 2.1 d'Xcode permet de compiler des applications en Universal binaries. Mais pour Universal 2, Xcode 12 est nécessaire.
En 2020, avec macOS Big Sur et l'arrivée des processeurs Apple Silicon (Apple M1), une nouvelle version est intégrée, Rosetta 2.