用户名: 密码: 忘记密码? 注册

memory management during boot process

作者:  时间: 2010-10-15
 

/*
 * node_bootmem_map is a map pointer - the bits represent all physical
 * memory pages (including holes) on the node.
 */

typedef struct bootmem_data {
    unsigned long node_min_pfn;
    unsigned long node_low_pfn;
    void *node_bootmem_map;
    unsigned long last_end_off;
    unsigned long hint_idx;
    struct list_head list;
} bootmem_data_t;


node_low_pfn is the number of the last page of the physical address space that can be managed directly; in other words, it is the end of ZONE_NORMAL.

node_bootmem_map is a pointer to the memory area in which the allocation bitmap is stored. On IA-32 systems, the memory area immediately following the kernel image is used for this purpose. The corresponding address is held in the _end variable, which is automatically patched into the kernel image during linking.