Unix 最早的可執行文件格式爲a.out格式,他的設計非常的簡單,以至於後來共享庫這個概念出現的時候,a.out格式就變得捉襟見肘;
於是人麼設計了COFF格式來解決這個問題,COFF是由Unix System V Release 3首先提出並使用的格式規範,
後來微軟公司基於COFF格式,制定了PE格式標準;
System V Release 4在COFF格式的基礎上引入了ELF格式;
這就是爲什麼目前PE和ELF格式如此相似的原因。
四種ELF文件類型:
1:*.o 可重定位文件(Relocatable File);
2:*.exe 可執行文件(Executable File)
3:*.so *.dll 共享目標文件(Shared Object File)
4:*.dump 核心轉儲文件(Core Dump File)