机顶盒内存分布

来源:互联网 发布:通知栏网络图标不见了 编辑:程序博客网 时间:2024/05/21 11:13


以128M内存为例:


盒子起来后video、audio部分加起来分配不会超过40M,代码段按demo工程来评估应该在12M以内

剩下部分如果没有其他用处应该分配到heap(队)上
大略计算系统起来73+40+12 差不多也有128M

lib_memp_alloc  内存池管理接口

picture的应用场景通常和video是互斥的,可以借video的内存来用,达到内存共享的目的。
video,audio不是用malloc来管理,是静态分配的,不用视频的时候把video的fw buff的地址传过来给其他模块用就可以
video一般都至少是4字节对齐

内存使用情况应该是你们代码来定的吧,通常来说0地址开始是存放解压后的执行代码(maincode),
高地址向下顺序存放video/audio/osd/subt等静态分配的内存,中间这一段就是heap

#define SYS_MEMORY_END                (128 * MBYTES)

/*!
   1024 bytes macro
  */
#define KBYTES    1024

/*!
   1M(1048576) bytes macro
  */
#define MBYTES    (KBYTES * KBYTES)