0%

tlsf 内存分配算法

tlsf 内存分配算法

TLSF

它用 2 层链接记录空闲块,第一层是 2 的幂次方,如 16,32,64,128。如果只用这个,内存浪费会比较严重,如分配 65 字节需要分配 128 字节。因此引入第二层链表,比如 64 这级,再分为 4 个区间,64-80,80-96,96-112,112-128,这样保证效率的同时提高内存利用率。这个算法的好处是稳定,无论申请多少空间的内存,分配所消耗的时间是差不多的,因此可以预估分配内存需要多少时间,多用于实时要求高的系统。其他内存算法则不一定,可能有时候很快,有时候运行久了空闲内存块很多时需要较长时间遍历。

Ref

  1. tlsf
  2. 什么是 tlsf 内存分配算法?它和普通的内存分配算法有什么区别?