O formato de arquivo Mach-O (Mach Object) é um formato de arquivo utilizado por macOS, iOS, watchOS e tvOS para executáveis, código objeto, bibliotecas compartilhadas, código carregado dinamicamente e despejos de memória (core dumps). Ele é um substituto para o formato mais antigo "a.out", derivado de NeXT/SunOS. Mach-O é um formato flexível e extensível que suporta múltiplas arquiteturas e tipos de objeto dentro de um único arquivo. Isso possibilita "binários fat" (fat binaries) que podem ser executados em diferentes arquiteturas de processador sem modificação. O formato é estruturado em um cabeçalho (header), comandos de carregamento (load commands) e seções de dados (data sections). O cabeçalho contém informações sobre o tipo de arquivo, a arquitetura e o número de comandos de carregamento. Os comandos de carregamento especificam como o sistema operacional deve carregar e vincular o arquivo, incluindo informações sobre segmentos, seções, símbolos e bibliotecas dinâmicas. As seções de dados contêm o código e os dados reais do programa. Os arquivos Mach-O são essenciais para a execução de aplicações e software de sistema nas plataformas Apple.