proc_pid_oom_score_adj
Table des matières
Retour à l'index
NOM
/proc/pid/oom_score_adj - Ajustement de notation de mise à mort sur mémoire
saturée
DESCRIPTION
- /proc/pid/oom_score_adj (depuis Linux 2.6.36)
-
Ce fichier permet d'ajuster l'heuristique de mauvaise conduite (« badness »)
utilisée pour sélectionner le processus qui sera tué dans une situation de
mémoire saturée.
-
L'heuristique de mauvaise conduite assigne une valeur à chaque tâche
candidate entre 0 (ne jamais tuer) et 1000 (toujours tuer) pour déterminer
le processus ciblé. Les unités sont à peu près proportionnelles à la
quantité de mémoire allouée dont le processus pourrait bénéficier, à partir
de l'estimation de son utilisation actuelle de mémoire et d'espace
d'échange. Par exemple si une tâche utilise toute la mémoire allouée, sa
notation de mauvaise conduite sera 1000. S'il utilise la moitié de sa
mémoire alloué, sa notation sera 500.
-
Un autre facteur est inclus dans la notation de mauvaise conduite : 3 % de
mémoire supplémentaire est allouée aux processus du superutilisateur par
rapport aux autres tâches.
-
La quantité de mémoire « permise » dépend du contexte dans lequel la mise à
mort sur mémoire saturée a été effectuée. Si elle est causée par la
saturation de mémoire assignée au cpuset de tâche allouant, la mémoire
permise représente l'ensemble de mems (accès mémoire) assignés à ce cpuset
(consulter cpuset(7)). Si elle est provoquée par la saturation de nœud(s)
de mempolicy, la mémoire permise représente l'ensemble de nœuds de
mempolicy. Si elle est due à l'atteinte d'une limite de mémoire (ou limite
d'espace d'échange), la mémoire allouée est cette limite configurée. Enfin,
si la cause est la saturation de mémoire du système complet, la mémoire
permise représente toutes les ressources allouables.
-
La valeur de oom_score_adj est ajoutée à la notation de mauvaise conduite
avant qu'elle ne soit utilisée pour déterminer la tâche à tuer. Les valeurs
acceptables sont comprises entre -1000 (OOM_SCORE_ADJ_MIN) et +1000
(OOM_SCORE_ADJ_MAX). Cela permet à l'espace utilisateur de contrôler les
préférences de mise à mort sur mémoire saturée, entre toujours préférer une
tâche en particulier ou désactiver complètement la mise à mort sur mémoire
saturée. La plus faible valeur possible, -1000, est équivalente à désactiver
complètement la mise à mort sur mémoire saturée pour cette tâche, puisque la
notation de mauvaise conduite sera toujours 0.
-
Par conséquent, il est trivial pour l'espace utilisateur de définir la
quantité de mémoire à considérer pour chaque tâche. Configurer une valeur
oom_score_adj de +500, par exemple, est à peu près équivalent à permettre
au reste des tâches partageant les mêmes ressources du système, de cpuset,
de mempolicy ou du contrôleur de mémoire d'utiliser au moins 50 % de mémoire
en plus. Une valeur de -500, au contraire, serait à peu près équivalente à
ne prendre en compte que la moitié de l'espace mémoire alloué à la tâche
pour la notation contre cette tâche.
-
Pour des raisons de compatibilité ascendante avec les précédents noyaux,
/proc/pid/oom_adj peut encore être utilisé pour ajuster la notation de
mauvaise conduite. Sa valeur est mise à l'échelle linéairement avec
oom_score_adj.
-
Écrire vers /proc/pid/oom_score_adj ou /proc/pid/oom_adj
modifiera l'autre avec sa valeur mise à l'échelle.
-
Le programme choom(1) fournit une interface en ligne de commande pour
ajuster la valeur de oom_score_adj d’un processus en cours d’exécution ou
d’une commande nouvellement exécutée.
HISTORIQUE
- /proc/pid/oom_adj (depuis Linux 2.6.11)
-
Ce fichier permet d'ajuster la notation utilisée pour sélectionner le
processus qui sera tué dans une situation de mémoire saturée. Le noyau
utilise cette valeur pour une opération de décalage sur la valeur
oom_score du processus : les valeurs valables sont dans l'intervalle de
-16 à +15 plus la valeur spéciale -17, qui désactive complètement la mise à
mort sur mémoire saturée du processus. Une notation négative diminue la
probabilité.
-
La valeur par défaut de ce fichier est 0. Un nouveau processus hérite de la
valeur oom_adj de son parent. Un processus doit être privilégié
(CAP_SYS_RESOURCE) pour mettre à jour ce fichier, bien qu’un processus
puisse accroître son réglage de oom_adjust (depuis Linux 2.6.20).
-
Depuis Linux 2.6.36, l'utilisation de ce fichier est déconseillée en faveur
de /proc/pid/oom_score_adj, et il a finalement été retiré dans
Linux 3.7.
VOIR AUSSI
proc(5), proc_pid_oom_score(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-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
et
Lucien Gentis <lucien.gentis@waika9.com>
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
-
- HISTORIQUE
-
- VOIR AUSSI
-
- TRADUCTION
-
This document was created by
man2html,
using the manual pages.
Time: 05:06:35 GMT, September 19, 2025