5-13 连接脚本(1)

关于连接地址的内容。

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

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

有这么多的header

然后是关于符号表

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

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

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

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

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

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

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

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

相关推荐
zh路西法7 小时前
【navigation2全局路径更新频率修正】行为树框架的巧妙利用
linux
苏宸啊7 小时前
IPC管道
linux·c++
bush47 小时前
嵌入式linux学习记录十,定时器
linux·嵌入式
峥无8 小时前
Linux进程信号:从基础概念到内核底层原理
linux·运维·服务器·信号处理
广州灵眸科技有限公司8 小时前
瑞芯微RV1126B开发板(EASY-EAI-PI2) 开发(编译)方式说明
linux·服务器·单片机·嵌入式硬件·电脑
北山有鸟9 小时前
用开发板的.config替换ubuntu中内核源码目录的.config
linux·运维·ubuntu
jcbut9 小时前
离线安装dify 1.7
linux·运维·dify
云计算磊哥@9 小时前
运维开发宝典024-Linux云计算运维入门阶段总结
linux·运维·运维开发
江华森9 小时前
《Linux内核技术实战:从Page Cache到CPU调度的深度解构》博客大纲(26讲精编版)
linux
知无不研10 小时前
对套接字的深入理解
linux·服务器·网络·c++·socket·网络套接字