5-13 连接脚本(1)

关于连接地址的内容。

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

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

有这么多的header

然后是关于符号表

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

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

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

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

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

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

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

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

相关推荐
学嵌入式的小杨同学7 分钟前
【嵌入式 C 语言实战】栈、队列、二叉树核心解析:存储原理 + 应用场景 + 实现思路
linux·c语言·网络·数据结构·数据库·后端·spring
VekiSon9 分钟前
ARM架构——时钟系统与定时器详解
linux·c语言·arm开发·嵌入式硬件·架构
optimistic_chen20 分钟前
【Docker入门】Docker Registry(镜像仓库)
linux·运维·服务器·docker·容器·镜像仓库·空间隔离
JiMoKuangXiangQu29 分钟前
Linux perf 子系统一览
linux·perf
中国lanwp43 分钟前
RedHat/CentOS 系统中根目录作用说明
linux·运维·centos
乐亦_Lee1 小时前
在Ubuntu下如何提升下载速度
linux·嵌入式硬件·ubuntu
先做个垃圾出来………1 小时前
Linux/Unix系统下的基础文本处理命令
java·linux·unix
风若飞1 小时前
Linux 环境下解决 Tomcat8 与 JDK8 配置问题
java·linux·运维·服务器·tomcat
木卫二号Coding1 小时前
Docker-构建自己的Web-Linux系统-镜像kasmweb/ubuntu-jammy-desktop
linux·ubuntu·docker
加油vekiki1 小时前
linux服务器搭建docker、docker-compose
linux·服务器·docker·容器