ELF:可执行连接文件格式。
ELF文件优点:
1. 支持不同平台上的交叉编译和交叉链接,可移植性性强(与Linux下其他可执行文件(a.out,cof)相比)
2. 在执行时支持动态链接共享库
ELF文件类型:
1. 可重定位文件:用户和其他目标文件一起创建可执行文件或者共享目标文件,例如lib*.a文件
2.可执行文件:用于生成进程映像,载入内存执行,例如编译好的可执行文件a.out。
3.可执行文件:用于生成进程映像,载入内存执行,例如编译好的可执行文件a.out。
ELF文件特特点:
1.平台相关: 在ELF 文件头中包含了足够的平台相关信息,如数据编码方式,平台位数,硬件平台e_machine等,这些平台相关信息可在编译由编译器决定。
2.PIC:.ELF可以生成一种特殊的代码——与位置无关的代码(position-independent code,PIC)。
3.强大的工具支持 :由于gnu有大量的工具支持elf文件格式.随着gnu工具的功能的扩展.程序员对ELF文件的运用也越来越灵活。
相关博客:
http://blog.chinaunix.net/uid-9525959-id-2001831.html
http://www.cnblogs.com/xmphoenix/archive/2011/10/23/2221879.html
相关资料:
http://blog.chinaunix.net/attachment/attach/26/40/46/9726404697228d82cda2af11366fa7722d3a4f1a58.pdf