Linux支持的可執行文件主要有:Coff,elf,flat,類似Windows的.exe
Coff文件格式
Common Object File Format,最早與uclinux的m68k編譯器結合,比較成熟。主要特征是:應用程式可以在目標程式中添加獨立於系統的信息,同時不影響對目標程式的訪問;為調試器預留空間,以便添加調試信息;可以通過編譯選項改變目標文件的生成方式。
elf文件格式
Executable and Linkable Format,可執行和鏈接格式,支持動態鏈接和重定位。比Coff有稍微開銷,但比Coff靈活。是Linux的通用格式,可在編譯時通過-elf2flt選項轉換成flat格式。
flat文件格式
壓縮的可執行二進制文件格式,應用於uclinux,只保存可執行代碼和數據,以及將可執行程式load到memory時所需要的重定位信息。可通過elf轉化。