Executable and Linkable Format (ELF) — это общепринятый стандартный формат файлов для исполняемых файлов, объектного кода, общих библиотек и дампов памяти (core dumps). Он широко используется во многих Unix-подобных операционных системах, включая Linux, Solaris, FreeBSD и другие. Файлы ELF разработаны с учетом гибкости и расширяемости, что позволяет использовать один и тот же базовый формат для различных архитектур и операционных систем. Структура формата включает заголовок файла, программные заголовки, заголовки секций и сами данные. Заголовок описывает общую структуру файла, включая точку входа для выполнения программы. Программные заголовки описывают сегменты — непрерывные области файла, которые загружаются в память во время выполнения. Заголовки секций описывают разделы, используемые для компоновки (линковки) и отладки. Сами данные содержат непосредственно код и информацию программы. Файлы ELF могут быть статически скомпонованы, что означает включение всего необходимого кода в исполняемый файл, или динамически скомпонованы, когда часть кода загружается из общих библиотек во время выполнения. Это позволяет создавать более компактные исполняемые файлы и упрощает обновление общих библиотек.