当前位置: 首页 > news >正文

深入解析:FreeRTOS内存分配与STM32内存布局详解

目录

0. 书接上文

1. FreeRTOS 中的内存分配

FLASH 内存分配

SRAM 内存分配

FreeRTOS 的任务内存分配

任务上下文切换

关键点总结

2. 通过.map文件查看.text/.data/.bss段地址

.map文档打开技巧和.map文件解析

在.map文件中查看.text/.data/.bss段的起始位置

.text 段

.data 段

.bss 段

堆和栈


0. 书接上文

STM32中的Flash、ROM与RAM全解析

通过前文我们行了解到STM32中的Flash、ROM与RAM,以及上面的内存分配(.bss/.data/.text段),这篇我们讲一下FreeRTOS中的内存分配。

1. FreeRTOS 中的内存分配

FLASH 内存分配

SRAM 内存分配

勘误一下:上图的 STACK_SIZE 栈大小应该为 1Kbytes

FreeRTOS 的任务内存分配

heap4 方案本质就是开了一个未初始化的大数组,所以 FreeRTOS 的任务栈都在 .bss 段:

任务上下文切换

关键点总结

  1. data段的数据会在flash中保存,在系统运行时,拷贝到sram的data段。

  2. freertos的堆空间被分配在sram的bss段(在heap4.c中创建一个大数组),freertos的任务栈、任务控制块、队列等资源的内存空间都在这里被分配;pvmalloc在这里分配内存;psp进程栈指针在这个区域偏移,处理os的栈。

  3. 单片机的堆空间被分配在sram的堆区域(在启动文件中定义大小,在单片机启动过程初始化),malloc在这里分配内存。

  4. 单片机的栈空间被分配在sram的栈区域(在启动文件中定义大小,在单片机启动过程初始化),msp主栈指针在这个区域偏移,处理单片机系统的栈。

2. 依据.map文档查看.text/.data/.bss段地址

.map文件打开方法和.map记录解析

Keil5----打开map文件技巧和map文件解析_.map文件怎么打开-CSDN博客

在.map文件中查看.text/.data/.bss段的起始位置

.text 段

.data 段

.bss 段

堆和栈

http://www.gsyq.cn/news/19101.html

相关文章:

  • 2025婚纱照拍摄推荐,南通造物摄影有限公司专业团队打造梦幻
  • 2025精密弹簧优质厂家推荐:蓝侨盈科技,精准弹性解决方案!
  • 有限空间作业安全无死角!AI 视觉守护人员与操作合规
  • 2025抖音推广服务商最新推荐榜:精准引流与高效转化的营销利
  • 4K Wallpaper mac v2.7.dmg 安装教程(Mac电脑详细安装步骤4K壁纸Mac下载安装)
  • 2025甘肃西服定制店推荐榜单:匠心工艺与贴心服务的完美结合
  • 2025表面瑕疵检测设备厂家最新推荐:精准高效,工业品质之选
  • 2025环氧板定制厂家推荐:一博科技材料,专业定制品质卓越!
  • CSP-S模拟29 2025.10.11
  • 最简单实用的SQL注入检测方法:Break Repair技巧详解
  • 2025螺杆泵厂家最新推荐榜:高效稳定与优质服务的行业首选!
  • 2025南通婚纱摄影最新推荐榜:创意拍摄与贴心服务的完美结合
  • 实用指南:微波雷达模块在智能家居中的具体应用案例有哪些?
  • 尝试茶叶数据集
  • 20251011
  • (第四次)回归与决策树
  • 2025机械加工实力厂家推荐:鑫铭机械专业制造,品质卓越首选
  • 高考语文做法
  • 2025石头纸设备批发厂家推荐鼎浩包装,环保高效生产首选!
  • 2025液压阀块供货厂家最新推荐榜:品质卓越与高效服务的行业
  • centos安装atop工具,检测服务器情况
  • 2025深圳网站建设公司最新推荐榜:创意设计与专业服务引领者
  • 2025智能照明系统直销厂家推荐:八渡科技,智慧生活首选!
  • 最小乘积模型与快速凸包构造学习笔记
  • 2025网络营销推广TOP5榜单:精准引流与高效转化的营销专
  • 基于 Scala 的英文数字验证码识别系统设计与实现
  • commitlint Lint 提交消息格式控制
  • 实用指南:【Android View】窗口机制
  • 2025整平机厂家最新推荐榜:高效精准与耐用品质的行业首选!
  • 2025复合钢丝网优质厂家推荐,昆山佳冠光电科技实力见证!