mirror of https://git.musl-libc.org/git/musl
Browse Source
this was an unfinished draft document present since the initial check-in, that was never intended to ship in its current form. remove it as part of reorganizing for replacement of the allocator.master
1 changed files with 0 additions and 22 deletions
@ -1,22 +0,0 @@ |
|||||
|
|
||||
|
|
||||
In principle, this memory allocator is roughly equivalent to Doug |
|
||||
Lea's dlmalloc with fine-grained locking. |
|
||||
|
|
||||
|
|
||||
|
|
||||
malloc: |
|
||||
|
|
||||
Uses a freelist binned by chunk size, with a bitmap to optimize |
|
||||
searching for the smallest non-empty bin which can satisfy an |
|
||||
allocation. If no free chunks are available, it creates a new chunk of |
|
||||
the requested size and attempts to merge it with any existing free |
|
||||
chunk immediately below the newly created chunk. |
|
||||
|
|
||||
Whether the chunk was obtained from a bin or newly created, it's |
|
||||
likely to be larger than the requested allocation. malloc always |
|
||||
finishes its work by passing the new chunk to realloc, which will |
|
||||
split it into two chunks and free the tail portion. |
|
||||
|
|
||||
|
|
||||
|
|
||||
Loading…
Reference in new issue