Can anyone tell me the reasoning for Apple shipping “Universal Binaries” of core system utilities like stuff that’s in `/bin` on macOS?

can-anyone-tell-me-the-reasoning-for-apple-shipping-“universal-binaries”-of-core-system-utilities-like-stuff-that’s-in-`/bin`-on-macos?

This may be a bit too technical for here, but I’m genuinely curious.

I’ve noticed that when I run lipo -info on common system binaries/applications like /bin/zsh and just general utilities that all of them are fat/universal binaries. Only one half of the binary is used, so I’m wondering why Apple just doesn’t ship just native binaries to save space.

The only reasons why that I can think of them doing this is booting an Apple Silicon install on an Intel Mac (Don’t think that’s possible), while the other one would be being able to chroot into an Intel install from an Apple Silicon install and vice versa (Probably vary unlikely to happen, especially doing it cross platform, don’t know if it even works).

Does anyone know why Apple made that design choice? That choice just seems weird to me.

Published
Categorized as Apple