【SylixOS lite版——基于STM32F767计算资源使用情况】

基本概念:

代码段(text):顾名思义是代码存放位置,在STM32中代码段一般存放于内置FLASH中;

已初始化数据段(data):已初始化数据段会分别体现在FlASH中和RAM中。因为是全局变量,运行过程中需要进行读写操作,因此占用一段RAM空间。又因为有初始值,其初始值需要占用FlASH空间。

未初始化的数据段(bss):bss与data相同的地方时它也是全局变量,运行过程中需要进行读写操作,因此占用一段RAM空间。又因为没哟初始值,因此不占用FLASH空间。

堆空间:STM32使用SylixOS lite版系统,应用堆栈全部由内核堆分配。硬件总内存大小首先分配给数据段(data+bss),剩余的分配给内核堆,其总大小与使用情况可由free命令查看。

【SylixOS lite版——基于STM32F767计算资源使用情况】

text、data、bss三部分的大小可在bsp生成文件bspstm32f767.siz中查看

【SylixOS lite版——基于STM32F767计算资源使用情况】

资源使用情况:

STM32的资源使用情况及当前的FlASH与RAM的使用情况

FlASH使用情况计算:

不考虑应用程序对flash的额外使用,当前flash完全用于存放系统bin文件,即bin文件大小。

FLASH占用 = bin文件大小 = test + data

RAM使用情况计算:

当前的ram使用由data、bss、已使用的内核堆三部分组成,空闲的部分为未使用的内核堆

RAM占用 = data + bss + 已使用的内核堆