5-13 连接脚本(1)

关于连接地址的内容。

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

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

有这么多的header

然后是关于符号表

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

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

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

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

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

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

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

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

相关推荐
BullSmall几秒前
scanoss-engine 本地最简部署 & 扫描命令(Linux/Anolis OS)
linux·运维·服务器
bellus-18 分钟前
Ubuntu 26.04 Miniforge3 安装与配置完整指南
linux·运维·ubuntu
用什么都重名2 小时前
Ubuntu 24.04 安装 NVIDIA 驱动:解决 “NVIDIA-SMI has failed“ 报错全记录
linux·运维·ubuntu
Industio_触觉智能2 小时前
瑞芯微ISP内核驱动深度解析|RKISP39从架构到Probe初始化全流程(上篇)
linux·嵌入式硬件·硬件架构·摄像头·isp·瑞芯微·rk3576
有续技术2 小时前
三菱 (Mitsubishi) 机床 设置查看 IP 地址
linux·服务器·网络
yagami_gagami2 小时前
第四届黄河流域公安院校电子物证个人赛服务器取证
linux·服务器·网络·mysql·安全·docker·llama
邪修king3 小时前
Re:Linux系统篇(七) 开发工具篇 Chapter3:Makefile 从入门到精通 —— 依赖关系、伪目标、栈式推导与自动化构建全解
linux·运维·服务器·vim
bosins3 小时前
Ubuntu 日常最常用的文件操作场景和对应指令
linux·服务器·ubuntu
风曦Kisaki3 小时前
Kubernetes(K8s)笔记Day07: StatefulSet 有状态控制器详解与使用案例
linux·docker·云原生·容器·kubernetes
不相心 -w-3 小时前
Cmake的基础用法
linux·开发语言·c++