ld链接文件

embedded/2024/10/18 23:28:14/

文章目录

  • 1. sections缩写
  • 2. 链接脚本
    • 2.1 MEMORY(内存命令)
      • 2.1.1 作用
      • 2.1.2 格式
    • 2.2 SECTIONS(段命令)
      • 2.2.1 作用
      • 2.2.2 格式
    • 2.3 特殊符号含义
    • 2.4 通配符
    • 2.5 Eg

1. sections缩写

在这里插入图片描述
在这里插入图片描述

2. 链接脚本

https://www.cnblogs.com/jianhua1992/p/16852784.html

2.1 MEMORY(内存命令)

2.1.1 作用

对存储区域进行设置,定义区域的首地址ORIGIN,大小LENGTH,读写权限

2.1.2 格式

MEMORY{
name [(attr)] : ORIGIN = origin, LENGTH = len

}
在这里插入图片描述

2.2 SECTIONS(段命令)

2.2.1 作用

设置程序中各个段放在指定的地址空间,包括TEXT\RODATA\DATA\BSS\堆栈段。

2.2.2 格式

SECTIONS
{

secname [start_ADDR] [(TYPE)] : [AT (LMA_ADDR)]
{
contents
} [>REGION] [AT>LMA_REGION] [:PHDR HDR …] [=FILLEXP]

}
备注:
1、[ ]内的内容为可选选项, 一般不需要。
2、Secname右边的空格、冒号、花括号是必须的。
在这里插入图片描述
Eg1: [>REGION] 和 [AT>LMA_REGION]
在这里插入图片描述

“> WP_CAL1 AT> RP_CAL1” 表示将.calData定义的东西加载到WP_CAL1这一块区域上运行。而它的实际地址在RP_CAL1里(这里存放数据)
Eg2:输入段
*(.text)
把所有输入段放入’.text’段。
更多使用方法见:https://www.cnblogs.com/jianhua1992/p/16852784.html
“3.6.4.1 Input Section Basics”

2.3 特殊符号含义

在这里插入图片描述
Eg:
在这里插入图片描述
含义:isr_vector段放在FLASH区域的首地址,其内容都是4字节地址对齐,TEXT段紧接着放在isr_vector段后面,其内容也是4字节地址对齐, etext变量的值为TEXT段的末地址。

2.4 通配符

在这里插入图片描述

2.5 Eg

在这里插入图片描述
指引链接器把所有 ‘.text’ 段放在’ ‘.text’ 里,以及所有 ’.bss’ 段放到 ’.bss’ 中。链接器将会把所有以大写字母开头的文件的 ’.data’ 段放入 ’.DATA’ ,其他文件的 ’.data’ 段放入 ’.data’


http://www.ppmy.cn/embedded/43690.html

相关文章

电脑出现:excel词典(xllex.dll)文件丢失或损坏的错误提示怎么办?有效的将丢失的xllex.dll修复

当遇到 Excel 提示“词典 (xllex.dll) 文件丢失或损坏”的问题时,通常意味着该动态链接库文件(Dynamic Link Library,DLL),它与拼写检查功能相关联的,无法被正确找到或者合适地使用。那么有什么办法可以解决…

Java日志体系概述

一. 日志体系分类 1.1 功能分类 1.2 jar包分类 二. 以log4j2为例 2.1 slf4j-api的初始化动态绑定过程 一. 日志体系分类 1.1 功能分类 门面类 slf4j:Simple Logging Facade for Java,为java提供的简单日志Facade具体实现类 logbacklog4j1log4j2jul&…

软件功能测试的类型和流程分享

在现代社会,软件已经成为人们生活中不可或缺的一部分,而在软件的开发过程中,功能测试是不可或缺的环节。软件功能测试指的是对软件系统的功能进行检查和验证,以确保软件在各种情况下能够正常运行,并且能够按照用户需求…

视图【mysql数据库】

目录 一、视图的创建、查看、修改、删除 二、cascaded、local检查选项 cascaded和local的区别 三、视图的更新 四、视图的作用 一、视图的创建、查看、修改、删除 二、cascaded、local检查选项 上面的几句SQL中,我们虽然给视图插入了id 30的数据,但…

华为WLAN无线组网技术与解决方案

WLAN无线组网技术与解决方案 网络拓扑采用AP和AC旁挂式无线组网 配置思路: 1.让AP上线 1.1,使得AP能够获得IP地址 配置步骤: 1.把AC当作一个一个有管理功能的三层交换机 sys Enter system view, return user view with CtrlZ. [AC6605]vlan …

C++候捷stl-视频笔记1

认识headers、版本、重要资源 STL的核心思想是泛型编程 新式头文件内的组件封装在命名空间std中: using namespace std; using std::cout;或std::vector vec; 旧式头文件内的组件不封装在命名空间std中 注:不建直接使用using namespace xxx,如果使用的…

vue中在mounted使用$refs获取不到DOM元素

vue中在mounted使用$refs获取不到DOM元素 前言解决方案1、通过使用$nextTick来获取2、updated中获取 前言 在使用ref的时候,在mounted中通过$ref获取节点是获取不到报undefined this.$refs.xx 为 undefined 解决方案 在mounted钩子中加载回来的数据不会在这个阶段更…

Flask初体验

这里有一份展示Flask与Python的协同代码,Flask的web页面展示了系统的一个暴露的公共tcp port连接的所有用户ip:port列表。 做完才发现没有什么用处,我的本意是做一个reverse的ssh或者telnet终端。看点有几个: 我原本是打算用multiprocessin…