Introduction to Memory Management in Linux

All modern non-microcontroller CPUs contain a memory management unit and utilize the concept of virtual memory. This presentation describes the different types of virtual memory spaces and mappings used in the Linux kernel, the cases in which they are useful, how they are implemented in the kernel, and how they differ from user space memory. Concepts such as the hardware memory-management unit (MMU) and translation lookaside buffer (TLB) are discussed, as well as software concepts like kernel page tables. User space concepts such as growable stacks, memory paging, memory mapping, page faults, exceptions, and other memory-related conditions are covered as well.

author avatar
Pete Popov CEO, President
Peter Popov is a veteran of the embedded Linux industry with over 25 years of experience in Silicon Valley and international tech ventures. He founded Embedded Alley, later acquired by Mentor Graphics, and has worked as a Linux kernel developer since 2000. Pete holds a B.S. in Electrical Engineering from Cal Poly, San Luis Obispo.