====== Práce s pamětí RAM v Linuxu ======
Přestal jsem používat Swap na počítači, kde mám dostatek RAM paměti a chtěl jsem blíže porozumět tomu, jak Linux nakládá s pamětí a jejím uvolňování. Docela stručně a srozumitelně o tom popisuje stránka [[https://www.linuxatemyram.com/]].
Pokud si vyjedu výpis zaplnění paměti v (MB):
$ free -m
total used free shared buff/cache available
Mem: 1504 1491 13 0 855 792
Swap: 2047 6 2041
Tak z výpisu se nekoukám na sloupeček **free**, ale zajímá mě sloupeček **available**. Protože část paměti je sice obsazená, ale je stále považována jako k využití. Takže sloupeček **free** je z hlediska chápání volné RAM zavádějící.
Linux využívá nevyužitou RAM pro cacheování disku - řekněme do maxima fyzické RAM. Pokud ale aplikace potřebuje více RAM a není už žádná volná, tak systém začne uvolňovat část paměti pro cacheování disku. Pokud chci jednorázově bezpečně uvolnit RAM (která sloužila jako cache pro disk), tak to lze nedestruktivně udělat takto:
echo 3 | sudo tee /proc/sys/vm/drop_caches