Man page - vtimes(3)

Packages contains this manual

Available languages:

en fr pl ja ru ro

Manual

getrusage

NOM
BIBLIOTHÈQUE
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
ATTRIBUTS
STANDARDS
HISTORIQUE
NOTES
VOIR AUSSI
TRADUCTION

NOM

getrusage - Lire l’utilisation des ressources

BIBLIOTHÈQUE

BibliothĂšque C standard ( libc , -lc )

SYNOPSIS

#include <sys/resource.h>

int getrusage(int who , struct rusage * usage );

DESCRIPTION

getrusage () renvoie la mesure de l’utilisation des ressources pour who , qui peut valoir une des valeurs suivantes :
RUSAGE_SELF

Renvoyer les statistiques d’utilisation des ressources pour le processus appelant, ce qui correspond Ă  la somme des ressources utilisĂ©es par tous les processus lĂ©gers ( threads ) du processus.

RUSAGE_CHILDREN

Renvoyer les statistiques d’utilisation des ressources pour tous les processus fils du processus appelant qui se sont terminĂ©s et dont la fin a Ă©tĂ© attendue (avec wait (2)). Ces statistiques incluront les ressources utilisĂ©es par les petits-enfants, et autres descendants dĂ©jĂ  retirĂ©s si tous les descendants en question ont attendu la fin de leurs enfants.

RUSAGE_THREAD (depuis Linux 2.6.26)

Renvoyer les statistiques d’utilisation des ressources pour le thread appelant. La macro de test de fonctionnalitĂ© _GNU_SOURCE doit ĂȘtre dĂ©finie prĂ©alablement (avant l’inclusion d’un fichier d’en-tĂȘte) afin d’obtenir la dĂ©finition de cette constante Ă  partir de <sys/resource.h> .

L’utilisation des ressources est renvoyĂ©e dans la structure pointĂ©e par usage , qui est de la forme suivante :

struct rusage {
struct timeval ru_utime; /* Temps CPU utilisateur écoulé */
struct timeval ru_stime; /* Temps CPU systÚme écoulé */
long ru_maxrss; /* Taille résidente maximale */
long ru_ixrss; /* Taille de mémoire partagée */
long ru_idrss; /* Taille des données non partagées */
long ru_isrss; /* Taille de pile */
long ru_minflt; /* Demandes de pages (soft) */
long ru_majflt; /* Nombre de fautes de pages (hard) */
long ru_nswap; /* Nombre de swaps */
long ru_inblock; /* Nombre de lectures de blocs */
long ru_oublock; /* Nombre d’écritures de blocs */
long ru_msgsnd; /* Nombre de messages IPC émis */
long ru_msgrcv; /* Nombre de messages IPC reçus */
long ru_nsignals; /* Nombre de signaux reçus */
long ru_nvcsw; /* Chgmnts de contexte volontaires */
long ru_nivcsw; /* Chgmnts de contexte involontaires*/
};

Tous les champs ne sont pas complĂštement remplis ; les champs non maintenus sont mis Ă  zĂ©ro par le noyau (les champs non maintenus sont fournis pour assurer la compatibilitĂ© avec d’autres systĂšmes, et parce qu’ils pourraient un jour ĂȘtre supportĂ©s par Linux). Ces champs ont la signification suivante :
ru_utime

Temps total passé en mode utilisateur, mis dans une structure timeval (secondes et microsecondes).

ru_stime

Temps total passé en mode noyau, mis dans une structure timeval (secondes et microsecondes).

ru_maxrss (depuis Linux 2.6.32)

Taille maximale de mĂ©moire rĂ©sidente utilisĂ©e (en kilooctets). Pour RUSAGE_CHILDREN , il s’agit de la taille rĂ©sidente du fils le plus grand, et non de la taille rĂ©sidente maximale du processus.

ru_ixrss (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_idrss (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_isrss (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_minflt

Le nombre d’erreurs de pagination ( page fault ) sans activitĂ© d’entrĂ©es-sorties. Ici, cette activitĂ© est empĂȘchĂ©e en rĂ©clamant une page qui se trouve dans la liste des pages qui attendent d’ĂȘtre rĂ©allouĂ©es.

ru_majflt

Le nombre d’erreurs de pagination avec activitĂ© d’entrĂ©es-sorties.

ru_nswap (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_inblock (depuis Linux 2.6.22)

Le nombre de fois oĂč le systĂšme de fichiers a dĂ» traiter des entrĂ©es.

ru_oublock (depuis Linux 2.6.22)

Le nombre de fois oĂč le systĂšme de fichiers a dĂ» traiter des sorties.

ru_msgsnd (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_msgrcv (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_nsignals (non maintenu)

Ce champ n’est actuellement pas utilisĂ© par Linux.

ru_nvcsw (depuis Linux 2.6)

Le nombre de changements de contexte provoquĂ©s par un processus qui abandonne volontairement le processeur avant la fin de la tranche de temps qui lui est dĂ©volue (habituellement pour attendre la disponibilitĂ© d’une ressource).

ru_nivcsw (depuis Linux 2.6)

Le nombre de changements de contexte provoquĂ©s par un processus de plus grande prioritĂ© qui devient disponible Ă  l’exĂ©cution, ou parce que le processus actuel a dĂ©passĂ© le temps limite qui lui Ă©tait allouĂ©.

VALEUR RENVOYÉE

En cas de succĂšs, zĂ©ro est renvoyĂ©. En cas d’erreur, -1 est renvoyĂ© et errno est dĂ©finie pour prĂ©ciser l’erreur.

ERREURS

EFAULT

usage pointe en dehors de l’espace d’adressage disponible.

EINVAL

who est invalide.

ATTRIBUTS

Pour une explication des termes utilisés dans cette section, consulter attributes (7).

Image grohtml-3875150-1.png

STANDARDS

POSIX.1-2008.

POSIX.1 spécifie getrusage (), mais spécifie seulement les champs ru_utime et ru_stime .

RUSAGE_THREAD est spécifique à Linux.

HISTORIQUE

POSIX.1-2001, SVr4, 4.3BSD.

Avant Linux 2.6.9, si le traitement de SIGCHLD est configurĂ© avec SIG_IGN , les statistiques d’utilisation des processus enfants sont automatiquement incluses dans les valeurs renvoyĂ©es par RUSAGE_CHILDREN , bien que POSIX.1-2001 interdise explicitement cela. Cette non conformitĂ© est corrigĂ©e sous Linux 2.6.9 et ultĂ©rieurs.

La définition de la structure fournie au début de cette page provient de 4.3BSD Reno.

Des systĂšmes anciens fournissaient une fonction vtimes () qui remplissait le mĂȘme rĂŽle que getrusage (). Pour des raisons de compatibilitĂ© ascendante, la glibc (jusqu’à Linux 2.32) fournit aussi une fonction vtimes (). Toutes les nouvelles applications devraient utiliser getrusage () (depuis la Linux 2.33, la glibc ne fournit plus d’implĂ©mentation de vtimes ()).

NOTES

Les mesures de l’utilisation des ressources sont conservĂ©es au travers d’un execve (2).

VOIR AUSSI

clock_gettime (2), getrlimit (2), times (2), wait (2), wait4 (2), clock (3), proc_pid_stat (5), proc_pid_io (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>, Cédric Boutillier <cedric.boutillier@gmail.com>, Frédéric Hantrais <fhantrais@gmail.com> et Jean-Philippe MENGUAL <jpmengual@debian.org>

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 .