一、内存堆:
1、内存堆小小结构体:
//mem.c
struct mem {
mem_size_t next;
mem_size_t prev;
u8_t used;
};
2、内存堆操作函数:
//mem.c
void mem_init(void)
void mem_free(void *rmem)
void *mem_realloc(void *rmem,mem_size_t newsize)
void *mem_malloc(mem_size_t size)
void *mem_calloc(mem_size_t count,mem_size_t size)
二、内存池:
1、内存池小小结构体:
//memp.c
struct memp {
struct memp *next;
#if MEMP_OVERFLOW_CHECK
const char *file;
int line;
#endif
};
2、POOL的类型:
(1)POOL有许多种,opt.h中配置,其类型大小固定,个数需要用户配置。
(2)POOL类型:1)MEMPOOL -----standard pools
2)MALLOC_MEMPOOL -----used by mem_malloc in mem.c
3&