proc_buddyinfo(5) File Formats Manual proc_buddyinfo(5)

/proc/buddyinfo - Speicherfragmentierung

/proc/buddyinfo
Diese Datei enthält Informationen, die zur Diagnose von Speicherfragmentierungsproblemen verwandt werden. Jede Zeile beginnt mit der Kennzeichnung des Knotens und dem Name der Zone, die zusammen einen Speicherbereich identifizieren. Dies wird von der Anzahl der verfügbaren Stücke (Chunks) einer bestimmten Ordnung, in die diese Zonen geteilt sind, gefolgt. Die Größe in Bytes einer bestimmten Ordnung wird von der folgenden Formel bestimmt:

(2^Ordnung) * PAGE_SIZE

Der binäre Buddy-Speicherverwaltungsalgorithmus innerhalb des Kernels wird ein Stück in zwei Stücke einer geringeren Ordnung (daher mit der halben Größe) unterteilen oder zwei angrenzende Stück in ein größeres Stück höherer Ordnung (daher mit der doppelten Größe) kombinieren, um Reservierungsanfragen zu erfüllen und um Speicherfragmentierung etwas entgegenzusetzen. Die Ordnung entspricht der Spaltennummer, wenn mit dem Zählen bei Null begonnen wird.
Auf einem x86-64-System zum Beispiel:
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
In diesem Beispiel gibt es einen Knoten, der drei Zonen enthält und es gibt 11 verschiedene Stückgrößen. Falls die Seitengröße 4 Kilobyte beträgt, dann hat die erste Zone, genannt DMA, (auf X86 die ersten 16 Megabyte an Speicher) ein Stück von 4 Kilobyte (Ordnung 0) verfügbar und hat 3 Stücke von 4 Megabyte (Ordnung 10) verfügbar.
Falls der Speicher stark fragmentiert ist, werden die Zähler für Stücke höherer Ordnung Null sein und Zuweisungen von großen, zusammenhängenden Bereichen fehlschlagen.
Weitere Informationen über die Zonen können in /proc/zoneinfo gefunden werden.

proc(5)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>, Dr. Tobias Quathamer <toddy@debian.org>, Chris Leick <c.leick@vollbio.de>, Erik Pfannenstein <debianignatz@gmx.de> und Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer.

2. Mai 2024 Linux man-pages 6.8