Chinaunix首页 | 论坛 | 博客
  • 博客访问: 72520
  • 博文数量: 11
  • 博客积分: 395
  • 博客等级: 一等列兵
  • 技术积分: 181
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-12 18:29
文章分类

全部博文(11)

文章存档

2011年(7)

2010年(2)

2009年(2)

我的朋友

分类: LINUX

2011-08-11 17:50:06

1 bitmap
bootmem_init--->bootmem_init_node
   
    /*
     * Allocate the bootmem bitmap page.
     */
    boot_pages = bootmem_bootmap_pages(end_pfn - start_pfn);
    boot_pfn = find_bootmap_pfn(node, mi, boot_pages);


2 mem_map(page*)
bootmem_init--->bootmem_free_node--->free_area_init_node--->alloc_node_mem_map
mem_init--->free_all_bootmem_node--->free_all_bootmem_core--->__free_pages_bootmem--->__free_pages
加到zone->free_area[order].nr_free++

//buddy allocator用到mem_map, mem_map中的free页是根据bootmem_allocator中的bitmap的free页而来
//bootmem allocator被废除


3 mm_init--->kmem_cache_init //slab初始化
阅读(1794) | 评论(0) | 转发(0) |
0

上一篇:最近没事, 看linux源码!

下一篇:page cache

给主人留下些什么吧!~~