Linux Memory Management Documentation¶
This is a collection of documents about the Linux memory management (mm) subsystem. If you are looking for advice on simply allocating memory, see the Memory Allocation Guide.
User guides for MM features¶
The following documents provide guides for controlling and tuning various features of the Linux memory management
Kernel developers MM documentation¶
The below documents describe MM internals with different level of details ranging from notes and mailing list responses to elaborate descriptions of data structures and algorithms.
- Active MM
- Architecture Page Table Helpers
- PTE Page Table Helpers
- PMD Page Table Helpers
- PUD Page Table Helpers
- HugeTLB Page Table Helpers
- SWAP Page Table Helpers
- Memory Balancing
- Cleancache
- Free Page Reporting
- Frontswap
- High Memory Handling
- Heterogeneous Memory Management (HMM)
- hwpoison
- Hugetlbfs Reservation
- Kernel Samepage Merging
- Physical Memory Model
- When do you need to notify inside page table lock ?
- What is NUMA?
- Overcommit Accounting
- Page migration
- Page fragments
- page owner: Tracking about who allocated each page
- remap_file_pages() system call
- Short users guide for SLUB
- Split page table lock
- Transparent Hugepage Support
- Unevictable LRU Infrastructure
- z3fold
- zsmalloc