http://www.cnblogs.com/risunlee/p/5309855.html 2016 1. 标准malloc() 和 free() 库函数的缺陷: 1)在小型的嵌入式系统中,可能不可用。 2)具体实现相对较大,占用较多宝贵的代码空间。 3)通常不具备线程安全性。 4)具有不确定性,每次调用的时间开销可能不同。 5)会产生内存碎片。 6)会使得链接器、配置的复杂。 2. 内存分配方案范例。 1)Heap_1.c 仅实现 pvPortMalloc(),而没有实现pvPortFree(),但是 Heap_1.c 总是具有确定性。 2)Heap_2.c 采用最佳匹配算法来分配内存,并支持内存释放。 3)Heap_3.c 调用 malloc() 和 Free(),但挂起任务调度器使得函数具备线程保护的安全特性。 |
|