5-13 连接脚本(1)

关于连接地址的内容。

还记得会有一条指令, -ttext=0x80000000 , 这里设置的是一个绝对的地址,在这个C文件中的 所有的 局部变量,以及全局变量都要以这个为基础,他们应该是一个相对的地址。

首先是 关于汇编文件的 内容

有这么多的header

然后是关于符号表

符号表里面是 各个函数的 地址。

也就是 符号表中的内容基本上都在 .text , .data, .rodata , .bss 段中了。

然后是关于各个段的解释:

.text 存放的就是 机器指令。

.rodata 存放的是 const , 以及字符串。

.data 存放的就是 全局变量以及 static .

.bss 存放的是 没有初始值的 全局变量以及static

然后还有一点是, 连接器 会将 所有的 C文件的 这个四个段 分别的合并在一起。这里我不是很理解。

相关推荐
雨打夏夜1 分钟前
VMware + CentOS 9 双网卡静态 IP 配置完整指南
linux·虚拟机
承渊政道9 分钟前
【MySQL数据库学习】MySQL基本查询(上)
linux·数据库·学习·mysql·bash·数据库开发·数据库系统
道川贤林9 分钟前
EMMC开发环境的搭建与备份
linux·嵌入式·rk3588·orangepi
Benszen16 分钟前
云计算基础-4:Linux 进程管理
linux·运维·云计算
人间乄惊鸿客9 小时前
Linux所遇问题自记录
linux
AOwhisky9 小时前
MySQL 学习笔记(第四期):SQL 语言之多表查询
linux·运维·网络·数据库·笔记·学习·mysql
Phantom Void9 小时前
服务器处理客户端请求的设计方法
linux·运维·网络
一段路10 小时前
【虚拟机】Linux常用命令
linux·vim
daad77710 小时前
继续记录无人机SITL的起飞
linux
剑神一笑11 小时前
Linux ls 命令深度解析:从目录遍历到颜色输出的实现原理
linux·服务器·数据库