Talk:The Linux Kernel/Memory

General

 * vmalloc, vfree
 * ioremap, iounmap
 * vmalloc, vfree
 * ioremap, iounmap
 * ioremap, iounmap

Internal representation

 * Understanding the Linux Kernel, Third Edition (2005) by by Daniel P. Bovet and Marco Cesati
 * Linux Device Drivers, Third Edition (2005) by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman - Book under Creative Commons Attribution-ShareAlike 2.0 license
 * Chapter 8: Allocating Memory
 * Chapter 11: Data Types in the Kernel
 * Chapter 15: Memory Mapping and DMA
 * Understanding the Linux Virtual Memory Manager Mel Gorman (2007) - Book under Open Publication License
 * Linux Kernel 2.4 Internals (2002) 4. Linux Page Cache - from The Linux Documentation Project
 * The Linux Kernel (1999) Chapter 3: Memory Management - from The Linux Documentation Project
 * Linux Device Drivers, 2nd Edition (2001) by Alessandro Rubini & Jonathan Corbet
 * Chapter 7: Getting Hold of Memory
 * Chapter 13: mmap and DMA
 * How the Kernel Manages Your Memory
 * LWN technical articles about Linux Memory Management (CC-BY-SA 4.0 licensed):
 * Better active/inactive list balancing
 * Optimizing VMA caching

Slab Allocator

 * Linux Kernel Development, Third Edition (2010) by Robert Love - Chapter 12: Memory Management
 * The SLUB allocator
 * "SLUB: The unqueued slab allocator V6"
 * "slob: introduce the SLOB allocator"
 * Anatomy of the Linux slab allocator (Archive.org mirror of the M. Tim Jones' article)
 * "Understanding the Linux Virtual Memory Manager" Chapter 8: Slab Allocator by Mel Gorman

Page Allocation

 * What's in struct page LWN.net
 * Some kernel memory-allocation improvements LWN.net
 * Page Frame Allocation OSDev

struct page

 * Cramming more into struct page LWN.net
 * How many page flags do we really have? LWN.net

High mem

 * Large I/O memory in small address spaces