proc_buddyinfo(5) File Formats Manual proc_buddyinfo(5)

/proc/buddyinfo - fragmentacja pamięci

/proc/buddyinfo
Plik ten zawiera informacje używane do diagnozowania problemów z fragmentacją pamięci. Każdy wiersz zaczyna się identyfikatorem węzła i nazwą strefy które razem identyfikują region pamięci. Następnie znajduje się liczba dostępnych fragmentów określonego rzędu, w jakim te regiony są podzielone. Rozmiar w bajtach określonego rzędu jest podany według wzoru:

(2^rząd) * ROZMIAR_STRONY

Algorytm alokacji bliźniaków (ang. buddy) wewnątrz jądra podzieli jeden fragment na dwa fragmenty mniejszego rzędu (a więc dwukrotnie mniejsze) lub połączy dwa ciągłe fragmenty w jeden fragment wyższego rzędu (a więc dwukrotnie większy) aby zaspokoić żądanie alokacji i przeciwdziałać fragmentacji pamięci. Rząd pasuje do numeru kolumny, zaczynając liczenie od zera.
Na przykład w systemie x86-64:
Node 0, zone     DMA     1    1    1    0    2    1    1    0    1    1    3
Node 0, zone   DMA32    65   47    4   81   52   28   13   10    5    1  404
Node 0, zone  Normal   216   55  189  101   84   38   37   27    5    3  587
W tym przykładzie jest jeden węzeł zawierający trzy strefy i 11 fragmentów o różnych rozmiarach. Jeśli rozmiar strony wynosi 4 kilobajty, to pierwsza strefa, nazywana DMA (na x86 jest to pierwszych 16 megabajtów pamięci), ma dostępny m.in. jeden fragment o rozmiarze 4 kilobajtów (rząd 0) i 3 fragmenty o rozmiarze 4 megabajtów (rząd 10).
Jeśli pamięć jest mocno pofragmentowana, liczniki dla fragmentów wyższego rzędu wyniosą zero, a przydzielenie większych, ciągłych powierzchni nie powiedzie się.
Więcej informacji o strefach można znaleźć w /proc/zoneinfo.

proc(5)

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <pborys@dione.ids.pl>, Robert Luberda <robert@debian.org> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

2 maja 2024 r. Linux man-pages 6.9.1