当前位置: 首页 > news >正文

【嵌入式ARM汇编基础】-ELF文件格式内部结构详解(三)

ELF文件格式内部结构详解(三)

文章目录

  • ELF文件格式内部结构详解(三)
    • 12、动态部分和动态加载
    • 13、依赖加载(需要)
    • 14、程序重定位
      • 14.1 静态重定位
      • 14.2 动态重定位
      • 14.3 全局偏移表 (GOT)
      • 14.4 过程链接表 (PLT)

12、动态部分和动态加载

ELF 文件格式中的 .dynamic 部分用于指示加载器如何链接并准备执行二进制文件。

我们可以使用 readelf -d 命令详细查看 ELF 文件的动态部分。

在这里插入图片描述

在这里插入图片描述

这些段由加载器处理,最终生成一个可运行的程序。与我们见过的其他表一样,每个条目都有对应的类型,详细说明了如何解释它,以及其数据相对于动态段起始位置的位置。

令人困惑的是,动态头文件还维护着自己的符号表和字符串表,它们独立于 ELF 文件的主字符串表和符号表。它们的位置由 STRTAB 和 SYMTAB 表项指定,其大小分别由 STRSZ 字段(以字节为单位的字符串表大小)和 SYMENT 字段(动态符号表中的符号条目数)决定。

13、依赖加载࿰

http://www.lqws.cn/news/585991.html

相关文章:

  • IDEA相关配置记录
  • 对selenium进行浏览器和驱动进行配置Windows | Linux
  • 【机器学习第四期(Python)】LightGBM 方法原理详解
  • Excel Report
  • Photoshop 插件 NBP Freqsep Control 2.0 安装全流程
  • C++ Programming Language —— 第4章:程序流程结构
  • 【启发式算法】Dynamic A*(D*)算法详细介绍(Python)
  • 「Java流程控制」while循环
  • 3.前端和后端参数不一致,后端接不到数据的解决方案
  • Redis 和 Mysql 如何保证数据一致性
  • [Python 基础课程]变量
  • 如何通过SSL证书配置防止源站IP泄露 - 全面防护指南
  • 源码包安装haproxy(rocky8)
  • Kafka 核心机制面试题--自问自答
  • 本地部署kafka4.0
  • PHP中的异常处理try-catch语句
  • Franka机器人赋能RoboCulture研究,打造生物实验室智能解决方案
  • 【科研绘图系列】R语言绘制世界地图分布(world map)
  • 炸鸡派-基础测试例程
  • AdGuard Home 安装及使用
  • 插入排序的简单介绍
  • 在 VS Code 中安装与配置 Gemini CLI 的完整指南
  • 第28篇:深入解析OpenEuler 24.03中的PAM认证机制:从原理到实践
  • 面向安全产品测试的静态混淆型 Shellcode Loader 设计与对抗分析
  • react经验:在nextjs中使用motion组件
  • 设计模式-访问者模式
  • PHP WebSocket服务器搭建指南
  • 深度学习03 人工神经网络ANN
  • 大数据(3)-Hive
  • iOS 应用上架踩坑实录:7 个问题 + 工具组合解决方案详解