标签 gfp 下的文章
- 📂linux内存管理(十一)-页回收总览教程
随着linux系统不断分配内存,当系统内存压力越来越大时,就会对系统的每个压力大的zone进程内存回收,内存回收主要是针对匿名页和文件页进行的。对于匿名页,内存回收过程中会筛选出一些不经常使用的匿名页,将它们写入到swap分区中,然后作为空闲页框释放到伙伴系统。而对于文件页,内存回收过程中也会筛选出一些不经常使用的文件页,如果此文件页中保存的内容与磁盘中文件对应内容一致,说明此文件页是一个干...
- 📂linux内存管理(六)-伙伴分配器教程
linux内存三大分配器:引导内存分配器,伙伴分配器,slab分配器伙伴分配器当系统内核初始化完毕后,使用页分配器管理物理页,当使用的页分配器是伙伴分配器,伙伴分配器的特点是算法简单且高效,支持内存节点和区域,为了预防内存碎片,把物理内存根据可移动性分组,针对分配单页做了性能优化,为了减少处理器的锁竞争,在内存区域增加1个每处理器页集合。 1.伙伴分配器原理 连续的物理页称为页块(p...
- 📂linux伙伴系统接口alloc_page分析教程
在内核中分配内存,最后要通过伙伴系统接口进行实际物理页面的分配,一个重要的接口便是alloc\_page.本文介绍下alloc\_page的主要流程,各个部分的执行。主要包含正常分配流程,当页面不足的时候的处理方式。先定位到核心调用#define alloc_page(gfp_mask) alloc_pages(gfp_mask, 0)order是分配页面的阶,即2的指数个页面#define...