单片机学习小组
直播中

哥儿

8年用户 880经验值
擅长:嵌入式技术
私信 关注

Map文件编译后一个固件需要多少ROM和RAM?

Map文件编译后一个固件需要多少ROM和RAM?

回帖(1)

仇春灵

2022-2-16 11:49:08
看了MDK map 文件的一大堆数据,但做为一个选型必需,最简单的就是这个软件我需要多少ROM的RAM呢。
编译后一个固件需要多少ROM和RAM呢
MDK build ouput:

Map 文件最后总结:




  • Total ROM size: 即所需实际ROM最小值,包括代码code, 只读数据RO Data,还需包括初始化的读写数据,因为断电后这部分数据需存储于ROM中,上电后装载到RAM 中。Total ROM size required = code +RO data +RW data




  • Total RW size: RW data+ ZI data,就是所需RAM大小,包括所有的可读写数据,启动文件中分配的栈和堆大小。(栈用于函数中局部变量,形参,函数调用与中断嵌套的现场保护入栈空间,椎用于用户maclloc分配的空间),如果是操作系统还包括系统任务堆栈区。 最后是静态变量和全局变量是属于RW data(非零) 或者ZI data(为零或未初始化的.bss)
  • Total RAM size required = RW data +ZI data

ZI data 就是除已初始化数据部分的所有数据,包括堆和栈(和任务堆栈,如有),未初始化或初始化为0的全局变量或静态变量。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分