readelf命令解析及演示
目录
- 概述
- 简述
- 演示
概述
功能:用于显示ELF文件(如.so、.a、.o文件等)的相关信息。
readelf命令可显示一个或多个ELF格式对象文件的信息。后面可加一些选项控制要显示的特定信息。
elffile …是要检查的目标文件。支持32位和64位ELF文件,也支持包含ELF文件的文档(如使用ar命令将一些elf文件打包生成的lib*.a之类的文件)。
该程序执行与objdump相似的功能,但更详细,并且独立于BFD库而存在,因此,即使BFD中存在错误,readelf也不会受到影响。
Usage: readelf <option(s)> elf-file(s)Display information about the contents of ELF format filesOptions are:-a --all Equivalent to: -h -l -S -s -r -d -V -A -I-h --file-header Display the ELF file header-l --program-headers Display the program headers--segments An alias for --program-headers-S --section-headers Display the sections' header--sections An alias for --section-headers-g --section-groups Display the section groups-t --section-details Display the section details-e --headers Equivalent to: -h -l -S-s --syms Display the symbol table--symbols An alias for --syms--dyn-syms Display the dynamic symbol table-n --notes Display the core notes (if present)-r --relocs Display the relocations (if present)-u --unwind Display the unwind info (if present)-d --dynamic Display the dynamic section (if present)-V --version-info Display the version sections (if present)-A --arch-specific Display architecture specific information (if any)-c --archive-index Display the symbol/file index in an archive-D --use-dynamic Use the dynamic section info when displaying symbols-x --hex-dump=<number|name>Dump the contents of section <number|name> as bytes-p --string-dump=<number|name>Dump the contents of section <number|name> as strings-R --relocated-dump=<number|name>Dump the contents of section <number|name> as relocated bytes-z --decompress Decompress section before dumping it-w[lLiaprmfFsoRtUuTgAckK] or--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=loc,=Ranges,=pubtypes,=gdb_index,=trace_info,=trace_abbrev,=trace_aranges,=addr,=cu_index,=links,=follow-links]Display the contents of DWARF debug sections--dwarf-depth=N Do not display DIEs at depth N or greater--dwarf-start=N Display DIEs starting with N, at the same depthor deeper-I --histogram Display histogram of bucket list lengths-W --wide Allow output width to exceed 80 characters@<file> Read options from <file>-H --help Display this information-v --version Display the version number of readelf
Report bugs to <http://www.sourceware.org/bugzilla/>
简述
详见:https://sourceware.org/binutils/docs/binutils/readelf.html
-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 显示节的详细信息
-e
--headers 显示全部头信息,等价于: -h -l -S
-s
--syms
--symbols 显示符号表节的信息,包含静态符号表(.symtab)和动态符号表(.dynsym)如果只关心动态符号表可以直接使用--dyn-syms如果符号有相应的版本信息,则会显示该版本信息版本字符串显示为符号名称的后缀,并以@字符开头,例如foo@VER_1。 在解析未版本化引用的符号时,如果该版本是要使用的默认版本,则将显示为后缀,其后跟两个@字符,例如foo@@VER_2
-n
--notes 显示note段/节的信息
-r
--relocs 显示可重定位节的信息
-u
--unwind 显示unwind节信息
-d
--dynamic 显示动态节的信息
-V
--version-info 显示版本段的信息
-A
--arch-specific 显示特定结构体系信息
-c
--archive-index 显示二进制文档的标头部分中包含的文件符号索引信息
-D
--use-dynamic 显示符号时,使用动态节中的符号哈希表,而不是符号表节。显示重定位时,使显示动态重定位而不是静态重定位
-x <number or name>
--hex-dump=<number or name> 显示指定节的内容为十六进制字节
-p <number or name>
--string-dump=<number or name> 显示指定节的内容为可打印的字符串
-R <number or name>
--relocated-dump=<number or name> 显示指定节的内容为十六进制字节,并在显示之前重新定位-z--decompress 要求被x,R或p选项存储的节在显示之前先解压缩。如果未压缩,则将按原样显示
-w[lLiaprmfFsOoRtUuTgAckK]
--debug-dump[=rawline,=decodedline,=info,=abbrev,=pubnames,=aranges,=macro,=frames,=frames-interp,=str,=str-offsets,=loc,=Ranges,=pubtypes,=trace_info,=trace_abbrev,=trace_aranges,=gdb_index,=addr,=cu_index,=links,=follow-links]显示文件中DWARF调试节的内容
-I
--histogram 显示符号表时,显示bucket list长度的柱状图
-W
--wide 允许输出宽度超过80个字符显示在一行上
-H
--help 显示readelf可理解的命令行选项
-v
--version 显示readelf的版本信息
@file 从<file>中获取命令行选项
演示
readelf.exe -h libcdsprpc.soELF Header:Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00Class: ELF64Data: 2's complement, little endianVersion: 1 (current)OS/ABI: UNIX - System VABI Version: 0Type: DYN (Shared object file)Machine: AArch64Version: 0x1Entry point address: 0x7b0Start of program headers: 64 (bytes into file)Start of section headers: 20488 (bytes into file)Flags: 0x0Size of this header: 64 (bytes)Size of program headers: 56 (bytes)Number of program headers: 5Size of section headers: 64 (bytes)Number of section headers: 24Section header string table index: 21
readelf.exe -l libcdsprpc.soElf file type is DYN (Shared object file)
Entry point 0x7b0
There are 5 program headers, starting at offset 64Program Headers:Type Offset VirtAddr PhysAddrFileSiz MemSiz Flags AlignLOAD 0x0000000000000000 0x0000000000000000 0x00000000000000000x0000000000001090 0x0000000000001090 R E 0x10000LOAD 0x0000000000001ea0 0x0000000000011ea0 0x0000000000011ea00x0000000000000168 0x0000000000000168 RW 0x10000DYNAMIC 0x0000000000001ea0 0x0000000000011ea0 0x0000000000011ea00x0000000000000140 0x0000000000000140 RW 0x8GNU_STACK 0x0000000000000000 0x0000000000000000 0x00000000000000000x0000000000000000 0x0000000000000000 RW 0x10GNU_RELRO 0x0000000000001ea0 0x0000000000011ea0 0x0000000000011ea00x0000000000000160 0x0000000000000160 R 0x1Section to Segment mapping:Segment Sections...00 .hash .dynsym .dynstr .rela.plt .plt .text .rodata01 .dynamic .got .got.plt02 .dynamic0304 .dynamic .got
readelf.exe -S libcdsprpc.soThere are 24 section headers, starting at offset 0x5008:Section Headers:[Nr] Name Type Address OffsetSize EntSize Flags Link Info Align[ 0] NULL 0000000000000000 000000000000000000000000 0000000000000000 0 0 0[ 1] .hash HASH 0000000000000158 0000015800000000000000c4 0000000000000004 A 2 0 8[ 2] .dynsym DYNSYM 0000000000000220 0000022000000000000002d0 0000000000000018 A 3 2 8[ 3] .dynstr STRTAB 00000000000004f0 000004f0000000000000026a 0000000000000000 A 0 0 1[ 4] .rela.plt RELA 0000000000000760 000007600000000000000018 0000000000000018 AI 2 10 8[ 5] .plt PROGBITS 0000000000000780 000007800000000000000030 0000000000000010 AX 0 0 16[ 6] .text PROGBITS 00000000000007b0 000007b000000000000003f8 0000000000000000 AX 0 0 4[ 7] .rodata PROGBITS 0000000000000ba8 00000ba800000000000004e8 0000000000000001 AMS 0 0 1[ 8] .dynamic DYNAMIC 0000000000011ea0 00001ea00000000000000140 0000000000000010 WA 3 0 8[ 9] .got PROGBITS 0000000000011fe0 00001fe00000000000000008 0000000000000008 WA 0 0 8[10] .got.plt PROGBITS 0000000000011fe8 00001fe80000000000000020 0000000000000008 WA 0 0 8[11] .comment PROGBITS 0000000000000000 000020080000000000000107 0000000000000001 MS 0 0 1[12] .debug_pubnames PROGBITS 0000000000000000 0000210f00000000000002a2 0000000000000000 0 0 1[13] .debug_info PROGBITS 0000000000000000 000023b10000000000000997 0000000000000000 0 0 1[14] .debug_abbrev PROGBITS 0000000000000000 00002d4800000000000000f1 0000000000000000 0 0 1[15] .debug_line PROGBITS 0000000000000000 00002e3900000000000002f5 0000000000000000 0 0 1[16] .debug_frame PROGBITS 0000000000000000 000031300000000000000350 0000000000000000 0 0 8[17] .debug_str PROGBITS 0000000000000000 000034800000000000000667 0000000000000001 MS 0 0 1[18] .debug_loc PROGBITS 0000000000000000 00003ae7000000000000087a 0000000000000000 0 0 1[19] .debug_macinfo PROGBITS 0000000000000000 000043610000000000000001 0000000000000000 0 0 1[20] .debug_pubtypes PROGBITS 0000000000000000 000043620000000000000208 0000000000000000 0 0 1[21] .shstrtab STRTAB 0000000000000000 00004f2400000000000000e1 0000000000000000 0 0 1[22] .symtab SYMTAB 0000000000000000 0000457000000000000006d8 0000000000000018 23 45 8[23] .strtab STRTAB 0000000000000000 00004c4800000000000002dc 0000000000000000 0 0 1
Key to Flags:W (write), A (alloc), X (execute), M (merge), S (strings), I (info),L (link order), O (extra OS processing required), G (group), T (TLS),C (compressed), x (unknown), o (OS specific), E (exclude),p (processor specific)
readelf.exe -g libcdsprpc.soThere are no section groups in this file.
readelf.exe -t libcdsprpc.soThere are 24 section headers, starting at offset 0x5008:Section Headers:[Nr] NameType Address Offset LinkSize EntSize Info AlignFlags[ 0]NULL 0000000000000000 0000000000000000 00000000000000000 0000000000000000 0 0[0000000000000000]:[ 1] .hashHASH 0000000000000158 0000000000000158 200000000000000c4 0000000000000004 0 8[0000000000000002]: ALLOC[ 2] .dynsymDYNSYM 0000000000000220 0000000000000220 300000000000002d0 0000000000000018 2 8[0000000000000002]: ALLOC[ 3] .dynstrSTRTAB 00000000000004f0 00000000000004f0 0000000000000026a 0000000000000000 0 1[0000000000000002]: ALLOC[ 4] .rela.pltRELA 0000000000000760 0000000000000760 20000000000000018 0000000000000018 10 8[0000000000000042]: ALLOC, INFO LINK[ 5] .pltPROGBITS 0000000000000780 0000000000000780 00000000000000030 0000000000000010 0 16[0000000000000006]: ALLOC, EXEC[ 6] .textPROGBITS 00000000000007b0 00000000000007b0 000000000000003f8 0000000000000000 0 4[0000000000000006]: ALLOC, EXEC[ 7] .rodataPROGBITS 0000000000000ba8 0000000000000ba8 000000000000004e8 0000000000000001 0 1[0000000000000032]: ALLOC, MERGE, STRINGS[ 8] .dynamicDYNAMIC 0000000000011ea0 0000000000001ea0 30000000000000140 0000000000000010 0 8[0000000000000003]: WRITE, ALLOC[ 9] .gotPROGBITS 0000000000011fe0 0000000000001fe0 00000000000000008 0000000000000008 0 8[0000000000000003]: WRITE, ALLOC[10] .got.pltPROGBITS 0000000000011fe8 0000000000001fe8 00000000000000020 0000000000000008 0 8[0000000000000003]: WRITE, ALLOC[11] .commentPROGBITS 0000000000000000 0000000000002008 00000000000000107 0000000000000001 0 1[0000000000000030]: MERGE, STRINGS[12] .debug_pubnamesPROGBITS 0000000000000000 000000000000210f 000000000000002a2 0000000000000000 0 1[0000000000000000]:[13] .debug_infoPROGBITS 0000000000000000 00000000000023b1 00000000000000997 0000000000000000 0 1[0000000000000000]:[14] .debug_abbrevPROGBITS 0000000000000000 0000000000002d48 000000000000000f1 0000000000000000 0 1[0000000000000000]:[15] .debug_linePROGBITS 0000000000000000 0000000000002e39 000000000000002f5 0000000000000000 0 1[0000000000000000]:[16] .debug_framePROGBITS 0000000000000000 0000000000003130 00000000000000350 0000000000000000 0 8[0000000000000000]:[17] .debug_strPROGBITS 0000000000000000 0000000000003480 00000000000000667 0000000000000001 0 1[0000000000000030]: MERGE, STRINGS[18] .debug_locPROGBITS 0000000000000000 0000000000003ae7 0000000000000087a 0000000000000000 0 1[0000000000000000]:[19] .debug_macinfoPROGBITS 0000000000000000 0000000000004361 00000000000000001 0000000000000000 0 1[0000000000000000]:[20] .debug_pubtypesPROGBITS 0000000000000000 0000000000004362 00000000000000208 0000000000000000 0 1[0000000000000000]:[21] .shstrtabSTRTAB 0000000000000000 0000000000004f24 000000000000000e1 0000000000000000 0 1[0000000000000000]:[22] .symtabSYMTAB 0000000000000000 0000000000004570 2300000000000006d8 0000000000000018 45 8[0000000000000000]:[23] .strtabSTRTAB 0000000000000000 0000000000004c48 000000000000002dc 0000000000000000 0 1[0000000000000000]:
readelf.exe -s libcdsprpc.soSymbol table '.dynsym' contains 30 entries:Num: Value Size Type Bind Vis Ndx Name0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND1: 00000000000007b0 0 SECTION LOCAL DEFAULT 62: 0000000000000b50 44 FUNC GLOBAL DEFAULT 6 fastrpc_async_get_status3: 000000000000093c 44 FUNC GLOBAL DEFAULT 6 remote_handle_close4: 0000000000000968 44 FUNC GLOBAL DEFAULT 6 remote_handle_control5: 0000000000000a30 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke6: 0000000000000a88 44 FUNC GLOBAL DEFAULT 6 remote_handle64_close7: 0000000000000b7c 44 FUNC GLOBAL DEFAULT 6 fastrpc_release_async_job8: 00000000000009c8 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl9: 000000000000088c 44 FUNC GLOBAL DEFAULT 6 remote_munmap10: 0000000000000ae0 44 FUNC GLOBAL DEFAULT 6 rpcmem_alloc11: 0000000000000b24 44 FUNC GLOBAL DEFAULT 6 rpcmem_to_fd12: 00000000000007dc 44 FUNC GLOBAL DEFAULT 6 remote_mem_unmap13: 00000000000009d8 44 FUNC GLOBAL DEFAULT 6 remote_set_mode14: 0000000000000a04 44 FUNC GLOBAL DEFAULT 6 remote_handle64_open15: 00000000000008e4 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke16: 0000000000000834 44 FUNC GLOBAL DEFAULT 6 remote_munmap6417: 00000000000008b8 44 FUNC GLOBAL DEFAULT 6 remote_handle_open18: 00000000000009d0 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl19: 0000000000000ab4 44 FUNC GLOBAL DEFAULT 6 remote_handle64_control20: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __android_log_print21: 0000000000000910 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke_asyn22: 00000000000009c0 4 FUNC GLOBAL DEFAULT 6 remote_register_buf23: 0000000000000a5c 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke_as24: 00000000000009c4 4 FUNC GLOBAL DEFAULT 6 remote_register_buf_attr25: 0000000000000994 44 FUNC GLOBAL DEFAULT 6 remote_session_control26: 0000000000000b0c 24 FUNC GLOBAL DEFAULT 6 rpcmem_free27: 0000000000000808 44 FUNC GLOBAL DEFAULT 6 remote_mmap6428: 00000000000007b0 44 FUNC GLOBAL DEFAULT 6 remote_mem_map29: 0000000000000860 44 FUNC GLOBAL DEFAULT 6 remote_mmapSymbol table '.symtab' contains 73 entries:Num: Value Size Type Bind Vis Ndx Name0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND1: 0000000000000158 0 SECTION LOCAL DEFAULT 12: 0000000000000220 0 SECTION LOCAL DEFAULT 23: 00000000000004f0 0 SECTION LOCAL DEFAULT 34: 0000000000000760 0 SECTION LOCAL DEFAULT 45: 0000000000000780 0 SECTION LOCAL DEFAULT 56: 00000000000007b0 0 SECTION LOCAL DEFAULT 67: 0000000000000ba8 0 SECTION LOCAL DEFAULT 78: 0000000000011ea0 0 SECTION LOCAL DEFAULT 89: 0000000000011fe0 0 SECTION LOCAL DEFAULT 910: 0000000000011fe8 0 SECTION LOCAL DEFAULT 1011: 0000000000000000 0 SECTION LOCAL DEFAULT 1112: 0000000000000000 0 SECTION LOCAL DEFAULT 1213: 0000000000000000 0 SECTION LOCAL DEFAULT 1314: 0000000000000000 0 SECTION LOCAL DEFAULT 1415: 0000000000000000 0 SECTION LOCAL DEFAULT 1516: 0000000000000000 0 SECTION LOCAL DEFAULT 1617: 0000000000000000 0 SECTION LOCAL DEFAULT 1718: 0000000000000000 0 SECTION LOCAL DEFAULT 1819: 0000000000000000 0 SECTION LOCAL DEFAULT 1920: 0000000000000000 0 SECTION LOCAL DEFAULT 2021: 0000000000000000 0 FILE LOCAL DEFAULT ABS remote.c22: 0000000000000ba8 0 NOTYPE LOCAL DEFAULT 7 $d.123: 0000000000000000 0 NOTYPE LOCAL DEFAULT 16 $d.1024: 0000000000000000 0 NOTYPE LOCAL DEFAULT 15 $d.1125: 0000000000000000 0 NOTYPE LOCAL DEFAULT 17 $d.226: 0000000000000000 0 NOTYPE LOCAL DEFAULT 18 $d.327: 0000000000000000 0 NOTYPE LOCAL DEFAULT 14 $d.428: 0000000000000000 0 NOTYPE LOCAL DEFAULT 13 $d.529: 0000000000000000 0 NOTYPE LOCAL DEFAULT 19 $d.630: 0000000000000000 0 NOTYPE LOCAL DEFAULT 12 $d.731: 0000000000000000 0 NOTYPE LOCAL DEFAULT 20 $d.832: 0000000000000106 0 NOTYPE LOCAL DEFAULT 11 $d.933: 00000000000007b0 0 NOTYPE LOCAL DEFAULT 6 $x.034: 0000000000000000 0 FILE LOCAL DEFAULT ABS35: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _bss_end__36: 0000000000011ea0 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC37: 0000000000011fe0 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_38: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_start39: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __end__40: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_start__41: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _edata42: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_end__43: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _end44: 0000000000000780 0 NOTYPE LOCAL DEFAULT 5 $x45: 0000000000000b50 44 FUNC GLOBAL DEFAULT 6 fastrpc_async_get_status46: 000000000000093c 44 FUNC GLOBAL DEFAULT 6 remote_handle_close47: 0000000000000968 44 FUNC GLOBAL DEFAULT 6 remote_handle_control48: 0000000000000a30 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke49: 0000000000000a88 44 FUNC GLOBAL DEFAULT 6 remote_handle64_close50: 0000000000000b7c 44 FUNC GLOBAL DEFAULT 6 fastrpc_release_async_job51: 00000000000009c8 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl52: 000000000000088c 44 FUNC GLOBAL DEFAULT 6 remote_munmap53: 0000000000000ae0 44 FUNC GLOBAL DEFAULT 6 rpcmem_alloc54: 0000000000000b24 44 FUNC GLOBAL DEFAULT 6 rpcmem_to_fd55: 00000000000007dc 44 FUNC GLOBAL DEFAULT 6 remote_mem_unmap56: 00000000000009d8 44 FUNC GLOBAL DEFAULT 6 remote_set_mode57: 0000000000000a04 44 FUNC GLOBAL DEFAULT 6 remote_handle64_open58: 00000000000008e4 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke59: 0000000000000834 44 FUNC GLOBAL DEFAULT 6 remote_munmap6460: 00000000000008b8 44 FUNC GLOBAL DEFAULT 6 remote_handle_open61: 00000000000009d0 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl62: 0000000000000ab4 44 FUNC GLOBAL DEFAULT 6 remote_handle64_control63: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __android_log_print64: 0000000000000910 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke_asyn65: 00000000000009c0 4 FUNC GLOBAL DEFAULT 6 remote_register_buf66: 0000000000000a5c 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke_as67: 00000000000009c4 4 FUNC GLOBAL DEFAULT 6 remote_register_buf_attr68: 0000000000000994 44 FUNC GLOBAL DEFAULT 6 remote_session_control69: 0000000000000b0c 24 FUNC GLOBAL DEFAULT 6 rpcmem_free70: 0000000000000808 44 FUNC GLOBAL DEFAULT 6 remote_mmap6471: 00000000000007b0 44 FUNC GLOBAL DEFAULT 6 remote_mem_map72: 0000000000000860 44 FUNC GLOBAL DEFAULT 6 remote_mmap
readelf.exe -n libcdsprpc.so
readelf.exe -r libcdsprpc.soRelocation section '.rela.plt' at offset 0x760 contains 1 entry:Offset Info Type Sym. Value Sym. Name + Addend
000000012000 001400000402 R_AARCH64_JUMP_SL 0000000000000000 __android_log_print + 0
readelf.exe -u libcdsprpc.soThe decoding of unwind sections for machine type AArch64 is not currently supported.
readelf.exe -d libcdsprpc.soDynamic section at offset 0x1ea0 contains 15 entries:Tag Type Name/Value0x0000000000000001 (NEEDED) Shared library: [liblog.so]0x0000000000000001 (NEEDED) Shared library: [libm.so]0x0000000000000001 (NEEDED) Shared library: [libc.so]0x0000000000000001 (NEEDED) Shared library: [libdl.so]0x000000000000000e (SONAME) Library soname: [libcdsprpc.so]0x0000000000000004 (HASH) 0x1580x0000000000000005 (STRTAB) 0x4f00x0000000000000006 (SYMTAB) 0x2200x000000000000000a (STRSZ) 618 (bytes)0x000000000000000b (SYMENT) 24 (bytes)0x0000000000000003 (PLTGOT) 0x11fe80x0000000000000002 (PLTRELSZ) 24 (bytes)0x0000000000000014 (PLTREL) RELA0x0000000000000017 (JMPREL) 0x7600x0000000000000000 (NULL) 0x0
readelf.exe -V libcdsprpc.soNo version information found in this file.
readelf.exe -A libcdsprpc.so
readelf.exe -c libcdsprpc.soreadelf: Error: File libcdsprpc.so is not an archive so its index cannot be displayed.
readelf.exe -s -D libcdsprpc.soSymbol table for image:Num Buc: Value Size Type Bind Vis Ndx Name16 0: 0000000000000834 44 FUNC GLOBAL DEFAULT 6 remote_munmap6410 0: 0000000000000ae0 44 FUNC GLOBAL DEFAULT 6 rpcmem_alloc8 0: 00000000000009c8 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl24 1: 00000000000009c4 4 FUNC GLOBAL DEFAULT 6 remote_register_buf_attr17 1: 00000000000008b8 44 FUNC GLOBAL DEFAULT 6 remote_handle_open25 2: 0000000000000994 44 FUNC GLOBAL DEFAULT 6 remote_session_control7 2: 0000000000000b7c 44 FUNC GLOBAL DEFAULT 6 fastrpc_release_async_job29 4: 0000000000000860 44 FUNC GLOBAL DEFAULT 6 remote_mmap3 4: 000000000000093c 44 FUNC GLOBAL DEFAULT 6 remote_handle_close9 5: 000000000000088c 44 FUNC GLOBAL DEFAULT 6 remote_munmap26 6: 0000000000000b0c 24 FUNC GLOBAL DEFAULT 6 rpcmem_free22 7: 00000000000009c0 4 FUNC GLOBAL DEFAULT 6 remote_register_buf6 7: 0000000000000a88 44 FUNC GLOBAL DEFAULT 6 remote_handle64_close20 8: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __android_log_print14 8: 0000000000000a04 44 FUNC GLOBAL DEFAULT 6 remote_handle64_open15 11: 00000000000008e4 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke28 12: 00000000000007b0 44 FUNC GLOBAL DEFAULT 6 remote_mem_map21 12: 0000000000000910 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke_asyn13 12: 00000000000009d8 44 FUNC GLOBAL DEFAULT 6 remote_set_mode5 13: 0000000000000a30 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke27 14: 0000000000000808 44 FUNC GLOBAL DEFAULT 6 remote_mmap644 14: 0000000000000968 44 FUNC GLOBAL DEFAULT 6 remote_handle_control23 15: 0000000000000a5c 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke_as19 16: 0000000000000ab4 44 FUNC GLOBAL DEFAULT 6 remote_handle64_control18 16: 00000000000009d0 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl12 16: 00000000000007dc 44 FUNC GLOBAL DEFAULT 6 remote_mem_unmap11 16: 0000000000000b24 44 FUNC GLOBAL DEFAULT 6 rpcmem_to_fd2 16: 0000000000000b50 44 FUNC GLOBAL DEFAULT 6 fastrpc_async_get_status
readelf.exe -p .comment libcdsprpc.soString dump of section '.comment':[ 0] Android (5058415 based on r339409) clang version 8.0.2 (https://android.googlesource.com/toolchain/clang 40173bab62ec746213857d083c0e8b0abb568790) (https://android.googlesource.com/toolchain/llvm 7a6618d69e7e8111e1d49dc9e7813767c5ca756a) (based on LLVM 8.0.2svn)
readelf.exe -s -I libcdsprpc.soSymbol table '.dynsym' contains 30 entries:Num: Value Size Type Bind Vis Ndx Name0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND1: 00000000000007b0 0 SECTION LOCAL DEFAULT 62: 0000000000000b50 44 FUNC GLOBAL DEFAULT 6 fastrpc_async_get_status3: 000000000000093c 44 FUNC GLOBAL DEFAULT 6 remote_handle_close4: 0000000000000968 44 FUNC GLOBAL DEFAULT 6 remote_handle_control5: 0000000000000a30 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke6: 0000000000000a88 44 FUNC GLOBAL DEFAULT 6 remote_handle64_close7: 0000000000000b7c 44 FUNC GLOBAL DEFAULT 6 fastrpc_release_async_job8: 00000000000009c8 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl9: 000000000000088c 44 FUNC GLOBAL DEFAULT 6 remote_munmap10: 0000000000000ae0 44 FUNC GLOBAL DEFAULT 6 rpcmem_alloc11: 0000000000000b24 44 FUNC GLOBAL DEFAULT 6 rpcmem_to_fd12: 00000000000007dc 44 FUNC GLOBAL DEFAULT 6 remote_mem_unmap13: 00000000000009d8 44 FUNC GLOBAL DEFAULT 6 remote_set_mode14: 0000000000000a04 44 FUNC GLOBAL DEFAULT 6 remote_handle64_open15: 00000000000008e4 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke16: 0000000000000834 44 FUNC GLOBAL DEFAULT 6 remote_munmap6417: 00000000000008b8 44 FUNC GLOBAL DEFAULT 6 remote_handle_open18: 00000000000009d0 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl19: 0000000000000ab4 44 FUNC GLOBAL DEFAULT 6 remote_handle64_control20: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __android_log_print21: 0000000000000910 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke_asyn22: 00000000000009c0 4 FUNC GLOBAL DEFAULT 6 remote_register_buf23: 0000000000000a5c 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke_as24: 00000000000009c4 4 FUNC GLOBAL DEFAULT 6 remote_register_buf_attr25: 0000000000000994 44 FUNC GLOBAL DEFAULT 6 remote_session_control26: 0000000000000b0c 24 FUNC GLOBAL DEFAULT 6 rpcmem_free27: 0000000000000808 44 FUNC GLOBAL DEFAULT 6 remote_mmap6428: 00000000000007b0 44 FUNC GLOBAL DEFAULT 6 remote_mem_map29: 0000000000000860 44 FUNC GLOBAL DEFAULT 6 remote_mmapSymbol table '.symtab' contains 73 entries:Num: Value Size Type Bind Vis Ndx Name0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND1: 0000000000000158 0 SECTION LOCAL DEFAULT 12: 0000000000000220 0 SECTION LOCAL DEFAULT 23: 00000000000004f0 0 SECTION LOCAL DEFAULT 34: 0000000000000760 0 SECTION LOCAL DEFAULT 45: 0000000000000780 0 SECTION LOCAL DEFAULT 56: 00000000000007b0 0 SECTION LOCAL DEFAULT 67: 0000000000000ba8 0 SECTION LOCAL DEFAULT 78: 0000000000011ea0 0 SECTION LOCAL DEFAULT 89: 0000000000011fe0 0 SECTION LOCAL DEFAULT 910: 0000000000011fe8 0 SECTION LOCAL DEFAULT 1011: 0000000000000000 0 SECTION LOCAL DEFAULT 1112: 0000000000000000 0 SECTION LOCAL DEFAULT 1213: 0000000000000000 0 SECTION LOCAL DEFAULT 1314: 0000000000000000 0 SECTION LOCAL DEFAULT 1415: 0000000000000000 0 SECTION LOCAL DEFAULT 1516: 0000000000000000 0 SECTION LOCAL DEFAULT 1617: 0000000000000000 0 SECTION LOCAL DEFAULT 1718: 0000000000000000 0 SECTION LOCAL DEFAULT 1819: 0000000000000000 0 SECTION LOCAL DEFAULT 1920: 0000000000000000 0 SECTION LOCAL DEFAULT 2021: 0000000000000000 0 FILE LOCAL DEFAULT ABS remote.c22: 0000000000000ba8 0 NOTYPE LOCAL DEFAULT 7 $d.123: 0000000000000000 0 NOTYPE LOCAL DEFAULT 16 $d.1024: 0000000000000000 0 NOTYPE LOCAL DEFAULT 15 $d.1125: 0000000000000000 0 NOTYPE LOCAL DEFAULT 17 $d.226: 0000000000000000 0 NOTYPE LOCAL DEFAULT 18 $d.327: 0000000000000000 0 NOTYPE LOCAL DEFAULT 14 $d.428: 0000000000000000 0 NOTYPE LOCAL DEFAULT 13 $d.529: 0000000000000000 0 NOTYPE LOCAL DEFAULT 19 $d.630: 0000000000000000 0 NOTYPE LOCAL DEFAULT 12 $d.731: 0000000000000000 0 NOTYPE LOCAL DEFAULT 20 $d.832: 0000000000000106 0 NOTYPE LOCAL DEFAULT 11 $d.933: 00000000000007b0 0 NOTYPE LOCAL DEFAULT 6 $x.034: 0000000000000000 0 FILE LOCAL DEFAULT ABS35: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _bss_end__36: 0000000000011ea0 0 OBJECT LOCAL DEFAULT ABS _DYNAMIC37: 0000000000011fe0 0 OBJECT LOCAL DEFAULT ABS _GLOBAL_OFFSET_TABLE_38: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_start39: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __end__40: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_start__41: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _edata42: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS __bss_end__43: 0000000000012008 0 NOTYPE LOCAL DEFAULT ABS _end44: 0000000000000780 0 NOTYPE LOCAL DEFAULT 5 $x45: 0000000000000b50 44 FUNC GLOBAL DEFAULT 6 fastrpc_async_get_status46: 000000000000093c 44 FUNC GLOBAL DEFAULT 6 remote_handle_close47: 0000000000000968 44 FUNC GLOBAL DEFAULT 6 remote_handle_control48: 0000000000000a30 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke49: 0000000000000a88 44 FUNC GLOBAL DEFAULT 6 remote_handle64_close50: 0000000000000b7c 44 FUNC GLOBAL DEFAULT 6 fastrpc_release_async_job51: 00000000000009c8 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl52: 000000000000088c 44 FUNC GLOBAL DEFAULT 6 remote_munmap53: 0000000000000ae0 44 FUNC GLOBAL DEFAULT 6 rpcmem_alloc54: 0000000000000b24 44 FUNC GLOBAL DEFAULT 6 rpcmem_to_fd55: 00000000000007dc 44 FUNC GLOBAL DEFAULT 6 remote_mem_unmap56: 00000000000009d8 44 FUNC GLOBAL DEFAULT 6 remote_set_mode57: 0000000000000a04 44 FUNC GLOBAL DEFAULT 6 remote_handle64_open58: 00000000000008e4 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke59: 0000000000000834 44 FUNC GLOBAL DEFAULT 6 remote_munmap6460: 00000000000008b8 44 FUNC GLOBAL DEFAULT 6 remote_handle_open61: 00000000000009d0 8 FUNC GLOBAL DEFAULT 6 remote_register_dma_handl62: 0000000000000ab4 44 FUNC GLOBAL DEFAULT 6 remote_handle64_control63: 0000000000000000 0 FUNC GLOBAL DEFAULT UND __android_log_print64: 0000000000000910 44 FUNC GLOBAL DEFAULT 6 remote_handle_invoke_asyn65: 00000000000009c0 4 FUNC GLOBAL DEFAULT 6 remote_register_buf66: 0000000000000a5c 44 FUNC GLOBAL DEFAULT 6 remote_handle64_invoke_as67: 00000000000009c4 4 FUNC GLOBAL DEFAULT 6 remote_register_buf_attr68: 0000000000000994 44 FUNC GLOBAL DEFAULT 6 remote_session_control69: 0000000000000b0c 24 FUNC GLOBAL DEFAULT 6 rpcmem_free70: 0000000000000808 44 FUNC GLOBAL DEFAULT 6 remote_mmap6471: 00000000000007b0 44 FUNC GLOBAL DEFAULT 6 remote_mem_map72: 0000000000000860 44 FUNC GLOBAL DEFAULT 6 remote_mmapHistogram for bucket list length (total of 17 buckets):Length Number % of total Coverage0 3 ( 17.6%)1 5 ( 29.4%) 17.9%2 6 ( 35.3%) 60.7%3 2 ( 11.8%) 82.1%4 0 ( 0.0%) 82.1%5 1 ( 5.9%) 100.0%
readelf.exe -vGNU readelf (GNU Binutils) 2.32
Copyright (C) 2019 Free Software Foundation, Inc.
This program is free software; you may redistribute it under the terms of
the GNU General Public License version 3 or (at your option) any later version.
This program has absolutely no warranty.
readelf命令解析及演示相关推荐
- 【Linux】一步一步学Linux——初识Linux命令解析器(10)
00. 目录 文章目录 00. 目录 01. Shell简介 02. Shell分类 03. 交互式shell和非交互式shell 04. 登录shell和非登录shell 05. Shell类型 0 ...
- linux中nm、ldd、readelf命令
一.nm 1. 说明: nm用来列出目标文件的符号清单.Makefile中将产生的目标文件的符号清单列出, 调查bug时,可以工具清单中的信息准确定位问题. 2. 用法下面是nm命令的 ...
- SylixOS DSP upgrade命令解析
SylixOS DSP upgrade命令解析 --SylixOS DSP6678平台下升级BSP 一.适用范围 本升级方案,针对TI官方评估板(TMDSEVM6678LE),主要介绍如何将Sylix ...
- Aix netstat命令解析
1.1 Aix netstat命令解析 1.1.1 概述 1.1.2 命令报告及其输出 1.1.2.1 接口可用性.地址和统计(-i/-in) 首先,应检验所有配置的网络接口的状态,使用 netsta ...
- Aix iostat命令解析
1.1 Aix iostat命令解析 1.1.1 概述 1.1.2 命令报告及其输出 1.1.2.1 确定磁盘使用率 $ iostat -T 2 10<?xml:namespace prefix ...
- OpenCASCADE绘制测试线束:OCAF 命令之标准演示命令
OpenCASCADE绘制测试线束:OCAF 命令之标准演示命令 标准演示命令 AISInitViewer AISRepaint AISDisplay AISUpdate AISErase AISRe ...
- linux之readelf命令
1.readelf命令解释 readelf命令用来显示一个或者多个elf格式的目标文件的信息 2.ELF文件类型 可重定位文件:用户和其他目标文件一起创建可执行文件或者共享目标文件,例如l ...
- shell--指“提供使用者使用界面”的软件(命令解析器)
在计算机科学中,Shell俗称壳(用来区别于核), 是指"提供使用者使用界面"的软件(命令解析器). 它类似于DOS下的command.com.它接收用户命令,然后调用相应的应用程 ...
- Aix vmstat命令解析
1.1 Aix vmstat命令解析 1.1.1 概述 vmstat 命令报告内核线程.虚拟内存.磁盘.Traps.CPU 活动的统计数据. AIX <?xml:namespace prefix ...
- 使用c#对xml文件进行解析 功能演示 161483724
使用c#对xml文件进行解析 功能演示 161483724 导入命名空间 实例化一个节点文档对象 读取文件 获取根节点 获取节点的名称 获取所有子节点 类对象数组的对象 根据索引从节点集合中取出节点对 ...
最新文章
- 腾讯优图+厦门大学发布!2021十大人工智能趋势
- C# 获取属性的displayName
- 条件编译用法(#ifndef #define #endif#else)
- AODV中实施watchdog
- python多线程编程(4): 死锁和可重入锁
- Android P 适配指南
- paypal创建订单后怎么获得id_新支付无国界:PayPal注册教程
- 电镜的成像原理-冷冻电镜成像技术1
- 朴素贝叶斯分类算法(Naive Bayesian classification)
- JavaScript 复习之 XMLHttpRequest 对象
- 最新苹果CMS对接千月版本-畅视影视(V9.3开源)已搭建测试版
- 信安软考 第十六章 网络安全风险评估技术原理与应用
- html中加分割线,多种HTML分割线
- chaosblade混沌测试
- 对话赫拉利与李飞飞:人工智能影响人类的四大问题
- linux下重要目录的作用
- win10 uwp 关联文件
- 物联网控制原理与技术--基于Matlab/simulink的频域分析奈氏图的应用(超详细/设计/实验/作业/练习)
- 根据IP进行城市定位
- matlab 画 带虚部,MATLAB1:求实部、虚部、模和幅角的运算