Remix.run Logo
yjftsjthsd-h a day ago

> Mach-O does more than ELF, and enables the two-layer namespacing that makes macOS able to manage dynamic linking dependencies better than ELF.

I've always admired that mach-o supports fat binaries.

mike_hearn 17 hours ago | parent [-]

It's more that Darwin does. A fat binary is just two independent Mach-O binaries concatenated with a small header.

yjftsjthsd-h 8 hours ago | parent [-]

Maybe, but ELF doesn't support doing so

kevans91 8 hours ago | parent [-]

One might be interested in the not-very-alive FatELF implementation, though: https://icculus.org/fatelf/

yjftsjthsd-h 6 hours ago | parent [-]

Yep, that sounds like the same idea:

> The format is very simple: it adds some accounting info at the start of the file, and then appends all the ELF binaries after it, adding padding for alignment. The end of the file isn't touched, so you can still do things like self-extracting .zip files for multiple architectures with FatELF.

But I would indeed call it very-not-alive; their demo image is Ubuntu 9.04