Linux虚拟内存管理 - 非连续内存分配
读书笔记
非连续内存分配(Noncontiguous Memory Allocation)
Linux中虚拟地址空间VMALLOC_START和VMALLOC_END之间保留了一块区域,VMALLOC_START的位置取决于可访问的物理内存大小,大小至少VMALLOC_RESERV(x86上位127MB)。该区域的页表可以按照请求修改,指向物理页分配器分配的物理页。意味着分配的大小必须是硬件页面大小的整数倍。分配器需要修改内核页表,且只有VMALLOC_START到VMALLOC_END之间的虚拟内存可.