堆内存管理
tos_mmheap_pool_add
- k_err_t tos_mmheap_pool_add(void *pool_start, size_t pool_size);
- 功能描述
向堆内存中添加内存池。
- 参数解释
IN/OUT**参数名**描述[in]pool_start待添加内存池起始地址[in]pool_size待添加内存池大小
- 返回值
K_ERR_NONE 添加成功。
K_ERR_MMHEAP_INVALID_POOL_ADDR 内存池起始地址非法。
K_ERR_MMHEAP_INVALID_POOL_SIZE 内存池大小非法。
tos_mmheap_pool_rmv
- k_err_t tos_mmheap_pool_rmv(void *pool_start);
- 功能描述
从堆内存中删除内存池。
- 参数解释
IN/OUT**参数名**描述[in]pool_start待删除的内存池起始地址
- 返回值
无
tos_mmheap_alloc
- void *tos_mmheap_alloc(size_t size);
- 功能描述
从堆内存中分配一块内存。
- 参数解释
IN/OUT**参数名**描述[in]size期望分配的内存大小
- 返回值
分配到的内存起始地址(返回K_NULL表示分配失败)。
tos_mmheap_aligned_alloc
- void *tos_mmheap_aligned_alloc(size_t size, size_t align);
- 功能描述
从堆内存中分配一块内存,此内存起始地址按align参数对齐。
- 参数解释
IN/OUT**参数名**描述[in]size期望分配的内存大小[in]align对齐参数
- 返回值
分配到的内存起始地址(返回K_NULL表示分配失败)。
tos_mmheap_realloc
- void *tos_mmheap_realloc(void *ptr, size_t size);
- 功能描述
从堆内存中重新分配一块内存。
- 参数解释
IN/OUT**参数名**描述[in]ptr原内存起始地址[in]size期望重新分配的内存大小
- 返回值
分配到的内存起始地址(返回K_NULL表示分配失败)。
tos_mmheap_free
- void *tos_mmheap_free(void *ptr);
- 功能描述
释放一片从堆内存中分配到的内存。
- 参数解释
IN/OUT**参数名**描述[in]ptr待释放的内存起始地址
- 返回值
无。