ELF文件格式分析
2013-03-08 21:07
267 查看
ELF文件有三种类型:
可重定位文件:也就是通常称的目标文件,后缀为.o。
共享文件:也就是通常称的库文件,后缀为.so。
可执行文件:本文主要讨论的文件格式,总的来说,可执行文件的格式与上述两种文件的格式之间的区别主要在于观察的角度不同:一种称为连接视图(Linking View),一种称为执行视图(Execution View)。
elf文件的格式可以通过readelf命令读取出来
-a
--all 显示全部信息,等价于 -h -l -S -s -r -d -V -A -I.
-h
--file-header 显示elf文件开始的文件头信息.
-l
--program-headers
--segments 显示程序头(段头)信息(如果有的话)。
-S
--section-headers
--sections 显示节头信息(如果有的话)。
-g
--section-groups 显示节组信息(如果有的话)。
-t
--section-details 显示节的详细信息(-S的)。
-s
--syms
--symbols 显示符号表段中的项(如果有的话)。
-e
--headers 显示全部头信息,等价于: -h -l -S
-n
--notes 显示note段(内核注释)的信息。
-r
--relocs 显示可重定位段的信息。
-u
--unwind 显示unwind段信息。当前只支持IA64 ELF的unwind段信息。
-d
--dynamic 显示动态段的信息。
-V
--version-info 显示版本段的信息。
-A
--arch-specific 显示CPU构架信息。
-D
--use-dynamic 使用动态段中的符号表显示符号,而不是使用符号段。
-x <number or name>
--hex-dump=<number or name> 以16进制方式显示指定段内内容。number指定段表中段的索引,或字符串指定文件中的段名。
-w[liaprmfFsoR] or
--debug-dump[=line,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=Ranges]
显示调试段中指定的内容。
-I
--histogram 显示符号的时候,显示bucket list长度的柱状图。
-v
--version 显示readelf的版本信息。
-H
--help 显示readelf所支持的命令行选项。
-W
--wide 宽行输出。
http://linux.chinaunix.net/doc/system/2005-01-13/777.shtml
可重定位文件:也就是通常称的目标文件,后缀为.o。
共享文件:也就是通常称的库文件,后缀为.so。
可执行文件:本文主要讨论的文件格式,总的来说,可执行文件的格式与上述两种文件的格式之间的区别主要在于观察的角度不同:一种称为连接视图(Linking View),一种称为执行视图(Execution View)。
elf文件的格式可以通过readelf命令读取出来
-a
--all 显示全部信息,等价于 -h -l -S -s -r -d -V -A -I.
-h
--file-header 显示elf文件开始的文件头信息.
-l
--program-headers
--segments 显示程序头(段头)信息(如果有的话)。
-S
--section-headers
--sections 显示节头信息(如果有的话)。
-g
--section-groups 显示节组信息(如果有的话)。
-t
--section-details 显示节的详细信息(-S的)。
-s
--syms
--symbols 显示符号表段中的项(如果有的话)。
-e
--headers 显示全部头信息,等价于: -h -l -S
-n
--notes 显示note段(内核注释)的信息。
-r
--relocs 显示可重定位段的信息。
-u
--unwind 显示unwind段信息。当前只支持IA64 ELF的unwind段信息。
-d
--dynamic 显示动态段的信息。
-V
--version-info 显示版本段的信息。
-A
--arch-specific 显示CPU构架信息。
-D
--use-dynamic 使用动态段中的符号表显示符号,而不是使用符号段。
-x <number or name>
--hex-dump=<number or name> 以16进制方式显示指定段内内容。number指定段表中段的索引,或字符串指定文件中的段名。
-w[liaprmfFsoR] or
--debug-dump[=line,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=Ranges]
显示调试段中指定的内容。
-I
--histogram 显示符号的时候,显示bucket list长度的柱状图。
-v
--version 显示readelf的版本信息。
-H
--help 显示readelf所支持的命令行选项。
-W
--wide 宽行输出。
http://linux.chinaunix.net/doc/system/2005-01-13/777.shtml
相关文章推荐
- ELF文件格式一例分析:
- Linux系统ELF文件二进制格式分析(四)
- 目标文件格式分析工具: ar,nm,objdump,objcopy,readelf
- Unix ELF文件格式及病毒分析
- arm elf文件格式简单分析
- ELF文件格式分析
- Linux及安全实践四——ELF文件格式分析
- elf文件格式分析
- Unix/ELF文件格式及病毒分析
- TinyOS07:elf文件格式及分析工具objdump
- 实践——ELF文件格式分析
- 分析源代码编译链接过程和shell中ELF格式可执行文件的初始化执行过程
- KEIL生成的ELF格式文件分析
- 目标文件格式分析工具: ar,nm,objdump,objcopy,readelf
- elf文件格式分析
- 20135337——Linux实践三:ELF文件格式(64位系统,简单分析)
- 010Editor 5.0.2 附注册机 附elf,dex,xml文件格式分析模板
- ELF文件格式分析
- ELF可执行格式文件转换成a.out格式分析工具
- elf文件格式实例分析