proc_buddyinfo(5) | File Formats Manual | proc_buddyinfo(5) |
NUME
/proc/buddyinfo - fragmentarea memoriei
DESCRIERE
- /proc/buddyinfo
- Acest fișier conține informații care sunt utilizate pentru diagnosticarea problemelor de fragmentare a memoriei. Fiecare linie începe cu identificarea nodului și numele zonei care, împreună, identifică o regiune de memorie. Acestea sunt urmate de numărul de fragmente disponibile într-o anumită ordine în care aceste zone sunt împărțite. Dimensiunea în octeți a unei anumite ordini este dată de formula:
-
(2^ordine) * PAGE_SIZE
- Algoritmul de alocare binar buddy din cadrul nucleului va împărți un fragment în două fragmente de o ordine mai mică (deci cu jumătate din dimensiune) sau va combina două fragmente contigue într-un fragment mai mare de o ordine mai mare (deci cu dimensiune dublă) pentru a satisface cererile de alocare și pentru a contracara fragmentarea memoriei. Ordinea se potrivește cu numărul coloanei, atunci când numărătoarea începe de la zero.
- De exemplu, într-un sistem 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
- În acest exemplu, există un nod care conține trei zone și există 11 dimensiuni diferite ale fragmentelor. Dacă dimensiunea paginii este de 4 kiloocteți, atunci prima zonă numită DMA (pe x86 primii 16 megaocteți de memorie) are un fragment de 4 kiloocteți (ordinea 0) disponibil și are 3 fragmente de 4 megaocteți (ordinea 10) disponibile.
- Dacă memoria este foarte fragmentată, contoarele pentru bucățile de ordin superior vor fi zero, iar alocarea de zone contigue mari va eșua.
- Informații suplimentare despre zone pot fi găsite în /proc/zoneinfo.
CONSULTAȚI ȘI
TRADUCERE
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
2 mai 2024 | Pagini de manual de Linux 6.9.1 |