The HyperNews Linux KHG Discussion Pages

Linux Memory Management

The Linux Cache Flush Architecture
David Miller wrote this document explaining how Linux tries to flush caches optimally, and more importantly, how people porting Linux can write code to use the architecture.
Linux Memory Management
This chapter is rather old; it was originally written when Linux was only a year old, and was updated a year later. The first section, on Linux's memory management code, is out of date by now, but may still provide some sort of understanding of the basic structure that will help you navigate through more recent kernels. The second section, an overview of 80386 memory management, is still mostly applicable; there are a few assumptions that should not get in your way in general.
80386 Memory Management
Linux's memory management was originally conceived for Intel's 80386 processor, which has fairly rich and relatively easy-to-use memory management features. During the port to the Alpha, Linux's memory management was abstracted in a way that has been successfully applied to many different processors, including the memory management units (MMU's) that are supplied with the 386, Alpha, Sparc (there are several different MMUs for the Sparc; most are supported), Motorola 68K, PowerPC, ARM, and MIPS CPUs.

Copyright (C) 1996 Michael K. Johnson, johnsonm@redhat.com