static int copy_mm(unsigned long clone_flags, struct task_struct * tsk) { struct mm_struct * mm, *oldmm; int retval; tsk->min_flt = tsk->maj_flt = 0; //初始化与内存管理相关的task_struct字段 tsk->cmin_flt = tsk->cmaj_flt = 0; tsk->nswap = tsk->cnswap = 0; tsk->mm ...
之前介绍过了 linux 虚拟内存管理方式 有5种,其中一种(名为VMA)用于 用户空间虚拟内存的管理,本篇就介绍 VMA VMA 是什么 task_struct 中的 mm_struct 中的 vmap_area(VMA) 可以看出来 , VMA是一种数据结构,那么对应的就有算法 VMA 相关的数据结构 与 算法的集合 就是我们这篇要讨论的内容 1 2 3 ...