最近在調試T20的內存,使用的指令在此記錄一下
1. pmap指令查看指定進程中的內存分布。該指令需要在busybox中開啟
pmap -x 111
2.應用與so需要執行strip操作,可以減小存儲空間的大小
mips-linux-gnu-strip libsysutils.so
3.nm指令和file指令可以查看應用和so是否為strip的
nm libzbar.so.0.2.0
nm: libzbar.so.0.2.0: no symbols
file libzbar.so.0.2.0
libzbar.so.0.2.0: ELF 32-bit LSB ?shared object, MIPS, MIPS32 rel2 version 1 (SYSV), dynamically linked, stripped
4.mips-linux-gnu-readelf可以查看so的編譯依賴的庫文件
mips-linux-gnu-readelf -d libzbar.so.0.2.0
輸出如下:
Dynamic section at offset 0x12c contains 22 entries:
? Tag ? ? ? ?Type ? ? ? ? ? ? ? ? ? ? ? ? Name/Value
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libpthread.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libc.so.0]
?0x0000000e (SONAME) ? ? ? ? ? ? ? ? ? ? Library soname: [libzbar.so.0]
?0x0000000c (INIT) ? ? ? ? ? ? ? ? ? ? ? 0x2210
?0x0000000d (FINI) ? ? ? ? ? ? ? ? ? ? ? 0x223c0
?0x00000004 (HASH) ? ? ? ? ? ? ? ? ? ? ? 0x20c
?0x00000005 (STRTAB) ? ? ? ? ? ? ? ? ? ? 0x12bc
?0x00000006 (SYMTAB) ? ? ? ? ? ? ? ? ? ? 0x70c
?0x0000000a (STRSZ) ? ? ? ? ? ? ? ? ? ? ?3513 (bytes)
?0x0000000b (SYMENT) ? ? ? ? ? ? ? ? ? ? 16 (bytes)
?0x00000003 (PLTGOT) ? ? ? ? ? ? ? ? ? ? 0x35190
?0x00000011 (REL) ? ? ? ? ? ? ? ? ? ? ? ?0x2078
?0x00000012 (RELSZ) ? ? ? ? ? ? ? ? ? ? ?400 (bytes)
?0x00000013 (RELENT) ? ? ? ? ? ? ? ? ? ? 8 (bytes)
?0x70000001 (MIPS_RLD_VERSION) ? ? ? ? ? 1
?0x70000005 (MIPS_FLAGS) ? ? ? ? ? ? ? ? NOTPOT
?0x70000006 (MIPS_BASE_ADDRESS) ? ? ? ? ?0x0
?0x7000000a (MIPS_LOCAL_GOTNO) ? ? ? ? ? 85
?0x70000011 (MIPS_SYMTABNO) ? ? ? ? ? ? ?187
?0x70000012 (MIPS_UNREFEXTNO) ? ? ? ? ? ?25
?0x70000013 (MIPS_GOTSYM) ? ? ? ? ? ? ? ?0x34
?0x00000000 (NULL) ? ? ? ? ? ? ? ? ? ? ? 0x0
mips-linux-gnu-readelf -d iCamera?
輸出如下:
Dynamic section at offset 0x160 contains 49 entries:
? Tag ? ? ? ?Type ? ? ? ? ? ? ? ? ? ? ? ? Name/Value
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libssl.so.1.0.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libzbar.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [liblogserver.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libstdc++.so.6]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libcrypto.so.1.0.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libfftw3.so.3]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libcurl.so.4]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libfaac.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libmp4v2.so.2]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libIOTCAPIs.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libAVAPIs.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libimp.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libsysutils.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libalog.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libaudioProcess.so]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [librt.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libpthread.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libm.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libpaho-mqtt3as.so.1]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libdl.so.0]
?0x00000001 (NEEDED) ? ? ? ? ? ? ? ? ? ? Shared library: [libc.so.0]
?0x0000000c (INIT) ? ? ? ? ? ? ? ? ? ? ? 0x404a08
?0x0000000d (FINI) ? ? ? ? ? ? ? ? ? ? ? 0x46efb0
?0x00000004 (HASH) ? ? ? ? ? ? ? ? ? ? ? 0x400310
?0x00000005 (STRTAB) ? ? ? ? ? ? ? ? ? ? 0x402534
?0x00000006 (SYMTAB) ? ? ? ? ? ? ? ? ? ? 0x400d34
?0x0000000a (STRSZ) ? ? ? ? ? ? ? ? ? ? ?5675 (bytes)
?0x0000000b (SYMENT) ? ? ? ? ? ? ? ? ? ? 16 (bytes)
?0x70000016 (MIPS_RLD_MAP) ? ? ? ? ? ? ? 0x550ba0
?0x00000015 (DEBUG) ? ? ? ? ? ? ? ? ? ? ?0x0
?0x00000003 (PLTGOT) ? ? ? ? ? ? ? ? ? ? 0x550bb0
?0x00000011 (REL) ? ? ? ? ? ? ? ? ? ? ? ?0x403e80
?0x00000012 (RELSZ) ? ? ? ? ? ? ? ? ? ? ?32 (bytes)
?0x00000013 (RELENT) ? ? ? ? ? ? ? ? ? ? 8 (bytes)
?0x70000001 (MIPS_RLD_VERSION) ? ? ? ? ? 1
?0x70000005 (MIPS_FLAGS) ? ? ? ? ? ? ? ? NOTPOT
?0x70000006 (MIPS_BASE_ADDRESS) ? ? ? ? ?0x400000
?0x7000000a (MIPS_LOCAL_GOTNO) ? ? ? ? ? 2
?0x70000011 (MIPS_SYMTABNO) ? ? ? ? ? ? ?384
?0x70000012 (MIPS_UNREFEXTNO) ? ? ? ? ? ?31
?0x70000013 (MIPS_GOTSYM) ? ? ? ? ? ? ? ?0x180
?0x00000014 (PLTREL) ? ? ? ? ? ? ? ? ? ? REL
?0x00000017 (JMPREL) ? ? ? ? ? ? ? ? ? ? 0x403ea0
?0x00000002 (PLTRELSZ) ? ? ? ? ? ? ? ? ? 2920 (bytes)
?0x70000032 (MIPS_PLTGOT) ? ? ? ? ? ? ? ?0x49a9c4
?0x6ffffffe (VERNEED) ? ? ? ? ? ? ? ? ? ?0x403e60
?0x6fffffff (VERNEEDNUM) ? ? ? ? ? ? ? ? 1
?0x6ffffff0 (VERSYM) ? ? ? ? ? ? ? ? ? ? 0x403b60
?0x00000000 (NULL) ? ? ? ? ? ? ? ? ? ? ? 0x0