El formato de archivo Mach-O (Mach Object) es un formato de archivo utilizado por macOS, iOS, watchOS y tvOS para ejecutables, código objeto, bibliotecas compartidas, código cargado dinámicamente y volcados de memoria (core dumps). Es el reemplazo del antiguo formato "a.out" derivado de NeXT/SunOS. Mach-O es un formato flexible y extensible que admite múltiples arquitecturas y tipos de objetos dentro de un mismo archivo. Esto permite la creación de "binarios universales" (fat binaries) que pueden ejecutarse en diferentes arquitecturas de procesador sin necesidad de modificaciones. El formato está estructurado en una cabecera, comandos de carga y secciones de datos. La cabecera contiene información sobre el tipo de archivo, la arquitectura y el número de comandos de carga. Los comandos de carga especifican cómo el sistema operativo debe cargar y enlazar el archivo, incluyendo información sobre segmentos, secciones, símbolos y bibliotecas dinámicas. Las secciones de datos contienen el código y la información real del programa. Los archivos Mach-O son esenciales para la ejecución de aplicaciones y software del sistema en las plataformas de Apple.