proc_buddyinfo
Table des matières
Retour à l'index
NOM
/proc/buddyinfo — Fragmentation de mémoire
DESCRIPTION
- /proc/buddyinfo
-
Ce fichier contient des informations qui sont utilisées pour le diagnostic
de problèmes de fragmentation de mémoire. Chaque ligne commence avec
l’identification du nœud et le nom de la zone qui ensemble identifient la
région de mémoire. Vient ensuite le compte de blocs (chunks) disponibles
d’un certain ordre dans lesquels ces zones sont fragmentées. La taille en
octets d’un certain ordre est donnée par la formule :
-
(2haordre) * PAGE_SIZE
-
L’algorithme binaire d’allocation du compagnon (« binary buddy allocator
algorithm ») à l’intérieur du noyau divisera un bloc en deux blocs d’ordre
plus petit (par conséquent de taille moitié) ou combinera deux blocs
contigus en un bloc d’ordre plus grand (par conséquent de taille double)
pour satisfaire les requêtes d’allocation et pour compter la fragmentation
de mémoire. L’ordre correspond au numéro de colonne lors d’un comptage
commençant à zéro.
-
Par exemple, sur un système 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
-
Dans cet exemple, il y a un nœud contenant trois zones et il y a 11 tailles
différentes de bloc. Si la taille de page est de 4 kilooctets, la première
zone appelée DMA (sur x86, les 16 premiers mégaoctets de mémoire) possède
1 bloc de 4 kilooctets (ordre 0) disponible et 3 blocs de 4 mégaoctets
(ordre 10) disponibles.
-
Si la mémoire est intensément fragmentée, les compteurs pour des blocs
d’ordre plus élevé seront à zéro et l’allocation de grandes zones continues
échouera.
-
Plus d’information sur les zones sont disponibles dans /proc/zoneinfo.
VOIR AUSSI
proc(5)
TRADUCTION
La traduction française de cette page de manuel a été créée par
Christophe Blaess <https://www.blaess.fr/christophe/>,
Stéphan Rafin <stephan.rafin@laposte.net>,
Thierry Vignaud <tvignaud@mandriva.com>,
François Micaux,
Alain Portal <aportal@univ-montp2.fr>,
Jean-Philippe Guérard <fevrier@tigreraye.org>,
Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>,
Julien Cristau <jcristau@debian.org>,
Thomas Huriaux <thomas.huriaux@gmail.com>,
Nicolas François <nicolas.francois@centraliens.net>,
Florentin Duneau <fduneau@gmail.com>,
Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,
Denis Barbier <barbier@debian.org>,
David Prévot <david@tilapin.org>,
Jean-Philippe MENGUAL <jpmengual@debian.org>,
Jean-Pierre Giraud <jean-pierregiraud@neuf.fr>
et
#
Cette traduction est une documentation libre ; veuillez vous reporter à la
GNU General Public License version 3
concernant les conditions de copie et
de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel,
veuillez envoyer un message à
Index
- NOM
-
- DESCRIPTION
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:34 GMT, September 19, 2025