提交 ee1e8545 编写于 作者: littlefrog1992's avatar littlefrog1992 提交者: Bernard Xiong

[update] 使用memheap内存管理算法时,对rt_system_heap_init传入的地址进行对齐。

上级 3327ffaa
......@@ -832,13 +832,16 @@ static struct rt_memheap _heap;
*/
void rt_system_heap_init(void *begin_addr, void *end_addr)
{
RT_ASSERT((rt_uint32_t)end_addr > (rt_uint32_t)begin_addr);
RT_ASSERT((rt_size_t)end_addr > (rt_size_t)begin_addr);
rt_size_t begin_align = RT_ALIGN((rt_size_t)begin_addr, RT_ALIGN_SIZE);
rt_size_t end_align = RT_ALIGN_DOWN((rt_size_t)end_addr, RT_ALIGN_SIZE);
/* initialize a default heap in the system */
rt_memheap_init(&_heap,
"heap",
begin_addr,
(rt_uint32_t)end_addr - (rt_uint32_t)begin_addr);
(void *)begin_align,
end_align - begin_align);
}
/**
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册