嵌入式开发者社区

标题: SystemHeap与Heap的区别 [打印本页]

作者: IRONMAN    时间: 2017-5-8 16:41
标题: SystemHeap与Heap的区别
    我在使用sysbios时看到了两种堆,一种是Heap,一种是SystemHeap,它们的大小还不一样,一个是4096,另一个是50*1024*1024。那个Heap我看到是在cfg文件中的这个地方描述的:
[attach]2305[/attach]

[attach]2306[/attach]


画红框的部分是说The heap configured above is used for the standard C malloc() and free() functions or when the 'heap' argument to Memory_alloc() is NULL. (以上的堆是为标准C语言中malloc() 和 free()函数使用或者当调用Memory_alloc()函数中堆参数为NULL时使用)

    然后这个
SystemHeap是在这里配置的:

[attach]2307[/attach]

注释说/* Memory_alloc() 调用时指定堆为 NULL 所使用的堆 */,那么我的问题来了,我在调用Memory_alloc()时将堆参数设置为NULL时那它到底使用的是哪个堆呢?



作者: 希望缄默    时间: 2017-5-8 17:13
Memory 组件配置了默认堆 就以 Memory 组件为准
没有配置 Memory 组件就使用 BIOS 堆




欢迎光临 嵌入式开发者社区 (https://www.51ele.net/) Powered by Discuz! X3.4