0001 =====================================
0002 Linux Memory Management Documentation
0003 =====================================
0004
0005 Memory Management Guide
0006 =======================
0007
0008 This is a guide to understanding the memory management subsystem
0009 of Linux. If you are looking for advice on simply allocating memory,
0010 see the :ref:`memory_allocation`. For controlling and tuning guides,
0011 see the :doc:`admin guide <../admin-guide/mm/index>`.
0012
0013 .. toctree::
0014 :maxdepth: 1
0015
0016 physical_memory
0017 page_tables
0018 process_addrs
0019 bootmem
0020 page_allocation
0021 vmalloc
0022 slab
0023 highmem
0024 page_reclaim
0025 swap
0026 page_cache
0027 shmfs
0028 oom
0029
0030 Legacy Documentation
0031 ====================
0032
0033 This is a collection of older documents about the Linux memory management
0034 (MM) subsystem internals with different level of details ranging from
0035 notes and mailing list responses for elaborating descriptions of data
0036 structures and algorithms. It should all be integrated nicely into the
0037 above structured documentation, or deleted if it has served its purpose.
0038
0039 .. toctree::
0040 :maxdepth: 1
0041
0042 active_mm
0043 arch_pgtable_helpers
0044 balance
0045 damon/index
0046 free_page_reporting
0047 frontswap
0048 hmm
0049 hwpoison
0050 hugetlbfs_reserv
0051 ksm
0052 memory-model
0053 mmu_notifier
0054 numa
0055 overcommit-accounting
0056 page_migration
0057 page_frags
0058 page_owner
0059 page_table_check
0060 remap_file_pages
0061 slub
0062 split_page_table_lock
0063 transhuge
0064 unevictable-lru
0065 vmalloced-kernel-stacks
0066 vmemmap_dedup
0067 z3fold
0068 zsmalloc