libdebian-installer
|
Data Structures | |
struct | di_mem_chunk |
a mem chunk More... | |
struct | di_mem_area |
a mem area More... | |
Functions | |
di_mem_chunk * | di_mem_chunk_new (di_ksize_t atom_size, di_ksize_t area_size) __attribute__((nonnull)) |
void * | di_mem_chunk_alloc (di_mem_chunk *mem_chunk) |
void * | di_mem_chunk_alloc0 (di_mem_chunk *mem_chunk) |
void | di_mem_chunk_destroy (di_mem_chunk *mem_chunk) |
size_t | di_mem_chunk_size (di_mem_chunk *mem_chunk) |
static size_t | internal_di_mem_chunk_compute_size (size_t size, size_t min_size) __attribute__((nonnull)) |
void* di_mem_chunk_alloc | ( | di_mem_chunk * | mem_chunk | ) |
Allocate a piece
mem_chunk | a di_mem_chunk |
References di_mem_area::allocated, area_size, atom_size, di_malloc(), di_mem_area::free, di_mem_area::index, di_mem_area::mem, mem_area, mem_areas, di_mem_area::next, num_mem_areas, di_mem_area::prev, and rarea_size.
Referenced by di_mem_chunk_alloc0().
void* di_mem_chunk_alloc0 | ( | di_mem_chunk * | mem_chunk | ) |
Allocate a cleared piece
mem_chunk | a di_mem_chunk |
References atom_size, and di_mem_chunk_alloc().
di_mem_chunk* di_mem_chunk_new | ( | di_ksize_t | atom_size, |
di_ksize_t | area_size | ||
) |
Makes a new Memory-Chunk Allocer
atom_size | size of each piece |
area_size | size of each alloced chunk |
References area_size, atom_size, di_new, mem_area, mem_areas, num_marked_areas, num_mem_areas, and rarea_size.
Referenced by di_hash_table_new_full(), di_packages_allocator_alloc(), di_release_alloc(), and internal_di_packages_allocator_alloc().