xref: /linux/Documentation/admin-guide/mm/index.rst (revision ad782c48df326eb13cf5dec7aab571b44be3e415)
13a3f7e26SMike Rapoport=================
23a3f7e26SMike RapoportMemory Management
33a3f7e26SMike Rapoport=================
43a3f7e26SMike Rapoport
53a3f7e26SMike RapoportLinux memory management subsystem is responsible, as the name implies,
6751d5b27SAndrew Klychkovfor managing the memory in the system. This includes implementation of
73a3f7e26SMike Rapoportvirtual memory and demand paging, memory allocation both for kernel
8751d5b27SAndrew Klychkovinternal structures and user space programs, mapping of files into
93a3f7e26SMike Rapoportprocesses address space and many other cool things.
103a3f7e26SMike Rapoport
113a3f7e26SMike RapoportLinux memory management is a complex system with many configurable
123a3f7e26SMike Rapoportsettings. Most of these settings are available via ``/proc``
133a3f7e26SMike Rapoportfilesystem and can be quired and adjusted using ``sysctl``. These APIs
1457043247SMauro Carvalho Chehabare described in Documentation/admin-guide/sysctl/vm.rst and in `man 5 proc`_.
153a3f7e26SMike Rapoport
163a3f7e26SMike Rapoport.. _man 5 proc: http://man7.org/linux/man-pages/man5/proc.5.html
173a3f7e26SMike Rapoport
18f462951eSMike RapoportLinux memory management has its own jargon and if you are not yet
19f462951eSMike Rapoportfamiliar with it, consider reading
20f462951eSMike Rapoport:ref:`Documentation/admin-guide/mm/concepts.rst <mm_concepts>`.
21f462951eSMike Rapoport
223a3f7e26SMike RapoportHere we document in detail how to interact with various mechanisms in
233a3f7e26SMike Rapoportthe Linux memory management.
241ad1335dSMike Rapoport
251ad1335dSMike Rapoport.. toctree::
261ad1335dSMike Rapoport   :maxdepth: 1
271ad1335dSMike Rapoport
28f462951eSMike Rapoport   concepts
294f4cfa6cSMauro Carvalho Chehab   cma_debugfs
30c4ba6014SSeongJae Park   damon/index
311ad1335dSMike Rapoport   hugetlbpage
321ad1335dSMike Rapoport   idle_page_tracking
33c9161088SMike Rapoport   ksm
346bf53999SMike Rapoport   memory-hotplug
352b7295c0SDaniel W. S. Almeida   nommu-mmap
363ecf53e4SMike Rapoport   numa_memory_policy
378867f610SJonathan Corbet   numaperf
381ad1335dSMike Rapoport   pagemap
391ad1335dSMike Rapoport   soft-dirty
40*ad782c48SSeongJae Park   swap_numa
4145c9a74fSMike Rapoport   transhuge
421ad1335dSMike Rapoport   userfaultfd
43*ad782c48SSeongJae Park   zswap
44