银河飞腾FT6678学习记录(二)——内存划分

本文探讨了嵌入式内存管理系统对最小碎片、管理负载和确定分配时间的需求,强调了动态分配malloc和free在实时系统中的不适用性。还提及了空间使用的情况,如内存分区、静态数组和不同核心的内存配置。同时,文章关注了何时变量会放入寄存器以及内存信息查询函数mem_getinfo和mem_show的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#仅用于个人工作中的知识点记录巩固#

嵌入式内存管理系统普遍要求:

1、最小的碎片

2、最小的管理负载

3、确定的分配时间

对于嵌入式实时操作系统而言,并不推荐采用动态分配和释放malloc和free,原因有两点:一是不确定mallic和free的时间,二是多次这样动态分配会将原本连续的一段存储空间在镜糕多次动态划分及释放后变为很多碎片的、不相邻的小空间,碎片的大量存在会使得程序最后连很小的内存也分配不到。

空间使用的几种情况:

1、创建内存分区(待学习)

2、划分静态数组

3、直接指定地址

FT6678中每片有8个核。

一片DSP的用户堆空间为192M,平均每个和24M,核心堆空间64M,每个和8M

一片DSP有4M的多核共享cache,每个核有512K私有数据区

每片都有DDR

#待理解:

1、什么情况下变量会被放到Register中

2、创建内存分区

3、

mem_getinfo

获取内存的使用信息

mem_show

显示内存的使用信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

amyun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值