Cher forum,
Je cherche un moyen de connaître l'occupation maximale d'un programme au cours de toute son exécution.
gnu time semble capable de cela mais uniquement sous bsd [1] (j'ai testé vite fait, ça semble marcher à peu près), mais existe-t-il autre chose, notement sous linux ?
Merci à tous
[1] time utilise wait3(), qui utilise getrusage
Je cite 'man getrusage' :
struct rusage {
struct timeval ru_utime; /* Temps utilisateur écoulé */
struct timeval ru_stime; /* Temps 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 */
long ru_majflt; /* Nombre de fautes de pages */
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 émis */
long ru_msgrcv; /* Nombre de messages 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 significatifs sous Linux. Actuellement (Linux 2.4) seuls les champs ru_utime, ru_stime, ru_minflt, ru_majflt, et ru_nswap sont remplis.
( d'ailleur ça serait bien qu'on sache ce qu'il en est en 2.6 )
# 2.6
Posté par Pascal Terjan (site web personnel) . Évalué à 6.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.