静态链接中有一个专门的段叫符号表 -- “.symtab”(Symbol Table), 里面保存了所有关于该目标文件的符号的定义和引用。

动态链接中同样有一个段叫 动态符号表 -- “.dynsym”(Dynamic Symbol) , 但.dynsym 相对于 .symtab 只保存了与动态链接相关的导入导出符号。

so中同样有.symtab,其中保存着所有的符号

.symtab 和 .dynsym 都有相对应的辅助表

比如 :

.symtab -> .strtab(String Table)符号字符串表

.dynsym -> .dynstr(Dynamic String Table)动态符号字符串表

在模块加载时,加载器收集每个加载进来的模块的动态符号表,组成全局的动态符号表,只有当依赖这个模块的其他模块发起重定位时,可以查询这个表来获取确定的地址。

转载于:https://www.cnblogs.com/gradyblog/p/8963926.html

ELF 动态链接 so的动态符号表(.dynsym)相关推荐

  1. .class文件转换.java_Java中的动态链接VS操作系统动态链接

    在操作系统OS中为了优化内存的使用会采用一种动态链接方式,一个文件想要在操作系统中运行必须经过编译.汇编译.链接.装载等步骤.可以参考Java程序是怎么跑起来的.本篇主要讲解Java栈帧中动态链接部分 ...

  2. linux下动态库符号表,Linux动态库(.so)符号表

    最近编译libbinder.so发现system/lib/libbinder.so只有358K,但单独编译生成的obj/SHARED_LIBRARIES/libbinder_intermediates ...

  3. ELF Format 笔记(七)—— 符号表

    最是那一低头的温柔,像一朵水莲花不胜凉风的娇羞,道一声珍重,道一声珍重,那一声珍重里有蜜甜的忧愁 -- 徐志摩 ilocker:关注 Android 安全(新手) QQ: 2597294287 符号表 ...

  4. 自己动手构造编译系统:编译、汇编与链接2.1.3 符号表管理

    2.1.3  符号表管理 符号表是记录符号信息的数据结构,它使用按名存取的方式记录与符号相关的所有编译信息.编译器工作时,少不了符号信息的记录和更新.在本书定义的高级语言中,符号存在两种形式:变量和函 ...

  5. 模拟链接器 重定位符号表

    模拟连接器创建文件头 user_app.asm 的头部模拟各种段选择子填充, 符号表的占位 app_core.asm 用于模拟加载程序 realloc_user_symbol 用来重定位符号表 loa ...

  6. 动态链接库的隐式动态链接和显示动态链接

    创建dll工程: 1 #include"CustomDll.h" 2 #include<windows.h> 3 BOOL APIENTRY DLLMAIN(HMODU ...

  7. 【读书笔记】【程序员的自我修养 -- 链接、装载与库(二)】进程虚拟地址空间、装载与动态链接、GOT、全局符号表、共享库的组织、DLL、C++与动态链接

    文章目录 前言 介绍 可执行文件的装载与进程 进程虚拟地址空间 装载方式 操作系统对可执行文件的装载 进程虚存空间分布 ELF文件的链接视图和执行视图 堆和栈 Linux 内核装载ELF & ...

  8. easyui datalist 动态绑定数据_一文看懂动态链接

    上篇文章中,介绍了静态链接,目的是为学习动态链接打底,毕竟现在,动态链接才是主流.但是,要理解本文的内容并不是一件容易的事情,可能看完后仍然是似懂非懂,对此,我的建议是,先把上篇静态链接的文章细细阅读 ...

  9. 程序是怎么跑起来的——虚拟内存与动态链接

    0.前言 计算机的核心任务就是运行程序,而程序是如何运行的?这个问题一直困扰我很多年.网上有很多资料介绍程序如何被编译,如何被链接,然后装载,最后到OS中运行的,但都很分散,讲到的都是点,很少有串起来 ...

最新文章

  1. 0119——UITextField
  2. 使用Apache Mahout创建在线推荐系统
  3. jquery select change事件_jQuery实现省市联动效果
  4. 解读mysql的索引和事务的正确姿势 1
  5. Linux下history命令用法
  6. (187)Verilog HDL:32位线性反馈移位寄存器
  7. 应力循环次数60ant_齿轮应力循环次数公式
  8. JavaScript 原生Ajax
  9. 《中华大字库2012》ttf字库字体样张总汇
  10. n−皇后问题 (dfs)
  11. 最后采用加权求和的方式得到样本的_一种婴幼儿视力自动检测方法与流程
  12. 网络爬虫——豆瓣电影排行榜数据抓取(高级)
  13. 谈谈对儒家与道家的一些小小看法
  14. 这个社交聊天 App 开源了!
  15. ppt怎么制作抖音快手快闪效果的倒计时动画?
  16. 3dmark压力测试 linux,3DMark压力测试发布:彻底榨干你电脑!
  17. H5 百度高德地图导航
  18. Linux-IO全整理:BIO/NIO/IO多路复用解析
  19. 示波器探头各种作用及工作原理
  20. 如何获取优酷视频的通用代码?

热门文章

  1. linux python安装教程_Linux系统如何安装Python?新手教程
  2. [转]python新手必碰到的问题---encode与decode,中文乱码--转载
  3. VS2010与QT的集成开发环境
  4. testNG之组测试
  5. WebApi权限验证流程的设计和实现
  6. 联想乐Pad_A1获取root权限
  7. 如何在C++中动态分配二维数组
  8. 【Can not lock the registry cache file】同一台机器部署多个dubbo应用(配置文件相同)
  9. new String(123) 创建了几个对象?
  10. myeclipse快捷生成代码块