目 录CONTENT

文章目录

链接文件学习(六):Clear和Copy

moke
2024-07-25 / 0 评论 / 0 点赞 / 37 阅读 / 0 字

概述

        部分时候,上点需要清楚RAM区域,CONST上电需要从ROM复制到RAM区域内,实现方法在本文介绍。

clear 部分

主要是BSS的数据部分,上电没必要存在的RAM空间,如下图

 在启动函数里面会调用这一部分的地址空间进行处理

Copy部分

主要是进行DATA数据的处理,以及类似与Flash的地方,在RAM里面运行

  在启动函数里面会调用这一部分的地址空间进行处理

 上述语法解析

LONG(-1); 

        表示-1取反码,对于32位的MCU就是0xFFFFFFFF,此处表示填充0xFF,也就是说空余空间均填充为0xFF\

 LONG(0 + ADDR(.CPU0_TRUSTED_BSS));             LONG(SIZEOF(.CPU0_TRUSTED_BSS));

很明显此处显示的是地址和长度

 LONG(LOADADDR(.CPU0_TRUSTED_DATA));         LONG(0 + ADDR(.CPU0_TRUSTED_DATA));         LONG(SIZEOF(.CPU0_TRUSTED_DATA));

注意Clear和Copy有一个地方不一样

LOADADDR 在Copy的地方有,表示RO某区域,表示VMA也就是虚拟地址

0 + ADDR  实在Clear的地方,表示在RAM区域,是LMA真实地址

博主关闭了所有页面的评论