struct page
mem_map
vector/* Allocates 2^order contiguous pages and returns a pointer to the
* descriptor for the first page
*/
struct page *alloc_pages(gfp_mask, order);
/* allocates a single page */
struct page *alloc_page(gfp_mask);
/* helper functions that return the kernel virtual address */
void *__get_free_pages(gfp_mask, order);
void *__get_free_page(gfp_mask);
void *__get_zero_page(gfp_mask);
void *__get_dma_pages(gfp_mask, order);
struct page
struct
task_struct
) effectively using fixed size allocations. Using the
SLAB reduces the frequency of the more heavy
allocation/deallocation operations.kmalloc()
by implementing
20 caches with object sizes geometrically distributed between
32bytes and 4MB
struct vm_struct
struct vm_struct
struct vm_area_struct
struct mm_struct
, red-black tree