GNU/Linux >> Znalost Linux >  >> Linux

Jaký je sloupec buffers ve výstupu z free?

free vytáhne svá data z /proc/meminfo

slkwr133701:/usr/src/linux # free

             total       used       free     shared    buffers     cached
Mem:       2053456     434572    1618884          0      77888     201820

slkwr133701:/usr/src/linux # cat /proc/meminfo

MemTotal:        2053456 kB
MemFree:         1618736 kB
Buffers:           77928 kB
....

To se týká paměti používané pro dočasné blokové I/O úložiště. Jádro musí neustále přiřazovat a uvolňovat jednotky stejné velikosti, jako jsou blokové I/O přenosy, síťové pakety a soketové vyrovnávací paměti

Spuštěním slabtop můžete získat lepší pohled na cache a alokaci vyrovnávací paměti

Odpověď na vaši otázku ohledně použití:Systém obvykle přidělí více bloků, než potřebuje, ale jak se zvýší „tlak v paměti“, tyto dodatečné bloky se uvolní.


"vyrovnávací paměti" lze získat zpět pod tlakem paměti. Je to tedy podobné jako u cache stránek (sloupec "cache"); není velký důvod k obavám. Hodnota "bufferů" může být malá nebo velká, záleží na tom, co váš systém dělá :-). Můžeme zde najít několik typů počítaných keší.

Vyrovnávací mezipaměť je doslova mezipaměť stránek pro blokové zařízení. Linux je pouze hlásí samostatně.[*] Můžete si všimnout použití "vyrovnávací paměti", zatímco programy čtou/zapisují uzel blokového zařízení, např. dd status=progress if=/dev/sda of=/dev/null . Lidé si toho zjevně všimnou také při spuštění programu DVD přehrávače.

Důkaz viz:30 % RAM tvoří „vyrovnávací paměti“. Co to je?

Pokud jste nepřistupovali k uzlu blokového zařízení, vaše „vyrovnávací paměti“ jsou pravděpodobně všechny metadata souborového systému . Souborové systémy používají mezipaměť interně pro pohodlí. Zajišťují, aby se nikdy neduplikovaly data souboru - obsah souboru - který je uložen v mezipaměti hlavní stránky. Přesné to, k čemu souborový systém používá vyrovnávací paměť – pokud vůbec něco – se liší v závislosti na souborovém systému.

Na počítači s malým množstvím fyzické RAM jsem si všiml, že "vyrovnávací paměti" mohou vypadat vysoko, když mám souborové systémy ext3/ext4. Bylo to proto, že zápisy do žurnálu procházejí vyrovnávací pamětí. (Viz odkaz výše). Souborové systémy ext3/4 také ukládají obsah adresáře do vyrovnávací paměti.

Za druhé, "vyrovnávací paměti" zobrazené pomocí free příkaz také zahrnuje SReclaimable, což znamená regenerovatelné desky. (Demonstrováno zde:Správný způsob monitorování paměti Linuxu, znovu).

Paměť desky není část mezipaměti stránky/vyrovnávací paměti. Je však vhodné je spočítat dohromady. Oba jsou regenerovatelné a hlavní (jediné?) použití regenerovatelných slabů je pro ukládání do mezipaměti souborového systému. Například metadata souboru (inody) a vyhledávání cest (dentry) jsou uloženy v mezipaměti v obnovitelných slabech. "Obnovitelná slabá paměť [může] zabírat velkou část systémové paměti na většinou nečinných systémech se spoustou souborů."

Můžete vidět nezpracovaný Buffers a SReclaimable hodnoty v cat /proc/meminfo . Můžete také spustit slabtop pro zobrazení seznamu desek. AFAICT, slabtop nedává statistiky o deskách jako regenerovatelné nebo ne. Ale obvykle můžete hádat, a pokud existuje nějaká podezřelá deska, myslím, že ji můžete vyhledat podle názvu.

[*] Pro účely této odpovědi je "vyrovnávací paměť" mezipaměť počítaná Buffers v /proc/meminfo . Jiné zdroje však mohou odkazovat na celou mezipaměť stránky jako na sjednocenou vyrovnávací paměť. Pokud chcete historické vysvětlení, podívejte se na první odkaz.

Také linuxoví vývojáři možná používali "mezipaměť" k tomu, aby znamenali různé věci, když se hádali o implementaci souborového systému.


Linux
  1. Jaká je refid ve výstupu ntpq -p?

  2. Jaký je rozdíl mezi vyrovnávací pamětí a mezipamětí v Linuxu?

  3. Co znamená symbol linux pipe | dělat?

  1. 30 % paměti RAM tvoří vyrovnávací paměti. Co je to?

  2. Význam řádku buffery/cache ve výstupu free

  3. Co znamená + na konci oprávnění z ls -l?

  1. Jak odstranit vyrovnávací paměti a mezipaměť v Linuxu

  2. Co znamená ve výstupu Ps?

  3. výstup 2. sloupce souboru