Resposta muito curta: O OSX combina um kernel Mach com um conjunto de ferramentas e bibliotecas BSD Unix. A herança do Mach (via NeXTSTEP) leva ao uso do Mach-O como o formato executável.
Veja esta resposta para mais detalhes: link
O Mac OS X usa o formato executável Mach-o e o FreeBSD Unix usa o formato executável ELF. OS X usa o FreeBSD Unix, corrija-me se eu estiver errado. Então, por que o formato Executável no OS X difere daquele do FreeBSD Unix?
Resposta muito curta: O OSX combina um kernel Mach com um conjunto de ferramentas e bibliotecas BSD Unix. A herança do Mach (via NeXTSTEP) leva ao uso do Mach-O como o formato executável.
Veja esta resposta para mais detalhes: link