日期 |
核心版本 |
架構 |
作者 |
GitHub |
CSDN |
2016-08-31 |
Linux-4.7 |
X86 & arm |
gatieme |
LinuxDeviceDrivers |
Linux記憶體管理 |
1 記憶體描述
CSDN |
GitHub |
Linux記憶體描述之概述–Linux記憶體管理(一) |
01-description/01-memory |
Linux記憶體描述之記憶體節點node–Linux記憶體管理(二) |
01-description/02-node |
Linux記憶體描述之記憶體地區zone–Linux記憶體管理(三) |
01-description/03-zone |
Linux記憶體描述之記憶體頁面page–Linux記憶體管理(四) |
01-description/04-page |
Linux記憶體描述之高端記憶體–Linux記憶體管理(五) |
01-description/05-highmem |
2 頁表管理
CSDN |
GitHub |
Linux分頁機制之概述–Linux記憶體管理(六) |
02-memory/01-develop |
Linux分頁機制之分頁機制的演變–Linux記憶體管理(七) |
02-pagetable/02-paging |
Linux分頁機制之分頁機制的實現詳解–Linux記憶體管理(八) |
02-pagetable/03-pte |
3 初始化記憶體管理
CSDN |
GitHub |
啟動期間的記憶體管理之初始化過程概述—-Linux記憶體管理(九) |
03-initialize/01-initialize |
啟動期間的記憶體管理之引導分配器bootmem–Linux記憶體管理(十) |
03-initialize/02-bootmem |
啟動期間的記憶體管理之memblock分配器–Linux記憶體管理(十一) |
03-initialize/03-memblock |
啟動期間的記憶體管理之bootmem_init初始化記憶體管理–Linux記憶體管理(十二) |
03-initialize/04-bootmem_init |
啟動期間的記憶體管理之build_zonelists初始化備用記憶體域列表zonelists–Linux記憶體管理(十三) |
03-initialize/05-build_zonelists |
啟動期間的記憶體管理之pagging_init初始化分頁機制–Linux記憶體管理(十四) |
03-initialize/06-paging_init |
4 夥伴系統
CSDN |
GitHub |
夥伴系統之夥伴系統概述–Linux記憶體管理(十五) |
04-buddy/01-buddy_system |
夥伴系統之初始化–Linux記憶體管理(十六) |
未完成 |
夥伴系統之避免片段–Linux記憶體管理(十六) |
04-buddy/03-fragmentation |
alloc_page分配記憶體空間–Linux記憶體管理(十七) |
04-buddy/04-alloc_page |
kmalloc分配實體記憶體與物理地址映射–Linux記憶體管理(十八) |
04-buddy/06-kmalloc |
高端記憶體映射之vmalloc記憶體中不連續的頁的分配–Linux記憶體管理(十九) |
04-buddy/07-highmem_mapping/06-vmalloc-(non_contiguous_pages) |
高端記憶體映射之kmap持久核心映射–Linux記憶體管理(二十) |
04-buddy/07-highmem_mapping/07-kmap-(kernel_mapping) |
高端記憶體映射之kmap_atomic固定映射–Linux記憶體管理(二十一) |
https://github.com/gatieme/LDD-LinuxDeviceDrivers/tree/master/study/kernel/02-memory/04-buddy/07-highmem_mapping/08-kmap_atomic-(kernel_mapping) |
5 slab分配器 著作權聲明:本文為博主原創文章 && 轉載請著名出處 @ http://blog.csdn.net/gatieme