原文:ELF 动态链接 so的动态符号表(.dynsym)

静态链接中有一个专门的段叫符号表 .symtab Symbol Table ,里面保存了所有关于该目标文件的符号的定义和引用。 动态链接中同样有一个段叫 动态符号表 .dynsym Dynamic Symbol , 但.dynsym 相对于 .symtab 只保存了与动态链接相关的导入导出符号。 so中同样有.symtab,其中保存着所有的符号 .symtab 和 .dynsym 都有相对应的辅助 ...

2018-04-27 18:40 0 1853 推荐指数:

查看详情

了解动态链接(五)—— 动态符号表

ilocker:关注 Android 安全(新入行,0基础) QQ: 2597294287 动态符号表 (.dynsym) 用来保存与动态链接相关的导入导出符号,不包括模块内部的符号。而 .symtab 则保存所有符号,包括 .dynsym 中的符号动态符号表中所包含的符号符号名保存 ...

Wed Jul 01 01:32:00 CST 2015 0 6666
ELF 动态链接 - so 的 重定位

动态链接下,无论时可执行文件还是共享对象,一旦对其他共享对象有依赖,也就是所有导入的符号时,那么代码或数据中就会有对于导入符号的引用。而在编译时期这些导入符号的确切地址时未知的。只有在运行期才能确定真正确切的地址 静态编译下,这些未知的地址会被编译器一一修正。 对于动态链接 ...

Sat Apr 28 06:39:00 CST 2018 0 970
ELF 动态链接 - so 的 .dynamic 段

动态链接文件中最重要的段就是 .dynamic段 这个段里保存了动态链接器需要的最基本的信息 比如:1. 依赖于哪些共享对象, d_tag = DT_NEED, d_ptr 表示共享对象文件名 2. 动态链接符号表的位置 d_tag = DT_SYMTAB, d_ptr ...

Sat Apr 28 02:26:00 CST 2018 0 842
程序运行之ELF 符号表

当一个工程中有多个文件的时候,链接的本质就是要把多个不同的目标文件相互粘到一起。就想玩具积木一样整合成一个整体。为了使不同的目标文件之间能够相互粘合,这些目标文件之间必须要有固定的规则才行。比如目标文件B用到了目标文件A中的函数”foo”,那么我们就称目标文件A定义了函数foo,目标文件B引用 ...

Wed May 23 06:30:00 CST 2018 0 1562
ELF Format 笔记(七)—— 符号表

最是那一低头的温柔,像一朵水莲花不胜凉风的娇羞,道一声珍重,道一声珍重,那一声珍重里有蜜甜的忧愁 —— 徐志摩 ilocker:关注 Android 安全(新手) QQ: 2597294287 符号表 (symbol table) 中保存着符号的定义或者引用信息。对于 android so ...

Thu Jul 09 07:33:00 CST 2015 0 2558
GCC制作动态库导出符号表【转】

GCC制作动态链接库时默认会将所有的函数及变量都导出到符号表,这里的函数及变量指的是没有使用sta ...

Mon Oct 08 23:58:00 CST 2018 0 820
linux 查看 *.a *.so 符号表(zt)

objdump -tT libName.so | grep symbel symbolName nm -D libName.so | grep symbel symbolName 很多非常熟悉windows 进程依赖那个dll,使用depends,linux使用ldd命令。查看函数 ...

Mon Jul 25 19:10:00 CST 2016 0 4139
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM