ELF 简介
ELF(Executable and Linkable Format)是一种可执行文件和可链接文件的标准格式,用于在Linux和Unix系统中存储程序和库文件。它是一种二进制文件格式,包含程序的代码、数据、符号表、段表等信息。
ELF格式的文件由多个段(section)组成,每个段包含不同类型的信息,如代码段、数据段、符号表段等。这些段按照一定的顺序排列在文件中,以便操作系统和链接器能够正确地解析和加载程序。
ELF格式的文件具有较好的可移植性和灵活性,可以在不同的操作系统和硬件平台上运行。它也支持动态链接和共享库,使得程序可以在运行时动态加载和链接库文件,提高了程序的灵活性和效率。
常用工具
1 ldd
ldd命令主要用于查看可执行程序或动态库依赖的动态库。
2 nm
nm主要用于查看elf中的符号。
3 strip
用于删除elf文件中的符号信息和调试信息,用来减小elf文件的大小。
4 strings
用于查看elf文件中的字符串信息。
5 readelf
查看elf文件信息,功能强大。
6 objdump
另一个查看elf文件的工具。