
[linux内存管理] 第22篇 buddy内存管理之慢速分配
0. 前言 在上一篇文章中我们分析了__alloc_pages中的get_page_from_freelist,也就是快速分配部分。这个函数会根据分配掩码和分配order进行快速分配,若快速分配过程并不能分配到合适的内存时,则会进入慢速分配的过程。 本文紧接前文继续分析__alloc_pages函数

[linux内存管理] 第019篇 buddy分配器基础知识以及分配器api接口
0. 前言 众所周知,Linux内存管理的核心是伙伴系统(buddy system)。其实在linux启动的那一刻,内存管理就已经开始了,只不过不是buddy在管理。在内核中,实现物理内存管理的allocator包括: 连续物理内存管理buddy allocator 非连续物理内存管理vmalloc

[linux内存管理] 第018篇 buddy系统的简介以及初始化
0. 前言 在[linux内存管理] 第013篇 zone的初始化一文中简单剖析了 zone 的初始化流程,也是继 arm64_memblock_init 和 sparse_init 之后有一个内存管理层,而zone 这一层管理层中,所有的物理内存都会被添加到zone 中的成员变量 free_are