可执行与可链接格式(Executable and Linkable Format,简称 ELF)是一种用于可执行文件、目标代码、共享库和核心转储(core dumps)的通用标准文件格式。它被广泛应用于许多类 Unix 操作系统,包括 Linux、Solaris、FreeBSD 等。ELF 文件的设计目标是灵活且可扩展,允许各种不同的硬件架构和操作系统使用相同的基本格式。该格式由文件头(header)、程序头表(program headers)、节头表(section headers)以及数据本身组成。文件头描述了文件的整体结构,包括程序执行的入口点。程序头描述了段(segments),即在执行期间加载到内存中的连续文件区域。节头描述了节(sections),主要用于链接和调试。数据部分则包含程序的实际代码和数据。ELF 文件可以进行静态链接,意味着所有必需的代码都包含在可执行文件中;也可以进行动态链接,即部分代码在运行时从共享库加载。这种机制不仅减小了可执行文件的体积,还使得共享库的更新和维护更加便捷。