table of contents
proc_pid_oom_score_adj(5) | File Formats Manual | proc_pid_oom_score_adj(5) |
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¶
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 à debian-l10n-french@lists.debian.org.
2 mai 2024 | Pages du manuel de Linux (non publiées) |