stm32内存分配博客笔记

原文:
stm32内存分配

笔记:

1、向量表与代码段;根据Cortex-M3权威指南描述,系统复位后,在向量表异常0处保存的是堆栈起始地址,而后紧跟中断向量表

2、可以从链接脚本.ld文件中看到终端向量表第一个被链接进FLASH里,其后紧跟代码段.text;

3、FLASH和RAM的内存分配

4、在STM32中堆和栈没有明显的界限,他们共用._user_heap_stack段起始地址到RAM最大地址这个范围内的所有空间,但是堆是从最小地址开始使用的,每次申请地址累加,栈是从最大地址开始使用的,每次地址累减,但是只要他们的地址没有重叠,程序永远也跑不飞,可是一旦两者所占用地址重叠,会导致不可预料的后果。栈占用堆,会导致堆内所存数据被破坏,堆占用栈会导致代码异常;

5、未初始化的全局变量被分配在.bss段,因为它们没有初始值,所以它们在FLASH里不占空间 ,但是他们在程序运行后,在.data被加载进RAM后同样也被加载进RAM里,加载方式就是把.bss段大小的RAM空间清0

相关推荐
梦0728 分钟前
学习笔记-ClaudeCode快速安装配置上手
笔记·学习
江华森32 分钟前
TDengine 时序数据库深度学习笔记
笔记·时序数据库·tdengine
路人蛃35 分钟前
【深入理解计算机系统】第二章第一节(信息存储)笔记
服务器·网络·笔记·计算机网络·系统架构
imDwAaY1 小时前
机器学习入门:从感知机到逻辑回归,理解线性分类器与Softmax CS188 Note20 学习笔记
人工智能·笔记·python·学习·机器学习·逻辑回归
chushiyunen1 小时前
json-rpc笔记
笔记·rpc·json
Jumbuck_101 小时前
从零实现《三角洲行动》手游自动跑刀脚本:ADB 直控 + OpenCV 视觉识别 + 固定点位搜刮)三角洲自动跑刀教程
嵌入式硬件·yolo·目标检测·自动化·自动驾驶·三角洲·自动跑刀
诸葛思颖1 小时前
论文阅读笔记——NetLLM :当LLM遇上网络管理
论文阅读·笔记
txh05071 小时前
从零开始学习FOC
单片机·嵌入式硬件·学习
2601_961194021 小时前
考研政治历年真题及解析pdf
stm32·单片机·嵌入式硬件·物联网·考研·pdf
今日待办1 小时前
STM32H747I-DISCO 开发指南【数字麦克风使用】
stm32·单片机·嵌入式硬件