Search notes:

Linux: memory

A process' virtual address space is divided into segments which are contiguous ranges of virtual addresses.
There are three important segements:
The three main memory allocators are
kmalloc Fast and efficieant for small memory blocks (say less than 128 KB)
vmalloc Allows to allocate large memory blocks in the virtual address space, even if no contiguous address space is availabe.
slab Used for memory that is frequently used by the Kernel (network packets, disk buffers etc). Such memory is reused when possible, rather than freeing and reallocating them.

Address translation

Address translation (or address binding) is the mapping of virtual addresses onto physical addresses.

TODO

free
dmidecode --type 17: show information about installed memory.
vmstat -s | grep 'memory\|swap'
lshw -short -C memory

See also

/proc/meminfo
/dev/mem
Read and write another process's memory
swap space
arch/x86/boot/memory.c
memory
The memory of a given process can be accessed via /proc/$pid/mem.
Memory (general development)

Index