Le 30/08/2023 à 14:26, peterpan31 (via linux-31 Mailing List) a écrit :
Bonjour,
J'essaie de connaître le temps d'exécution EFFECTIF d'un processus (ici espeak).
C'est-à-dire qu'il ne faut pas compter les pauses faites avec le signal SIGSTOP.
ps $PID -o 'etimes=' renvoie le temps global (pauses comprises).
Je ne veux pas ce chiffre.
Dois-je voir du côté de 'top' ?
Une idée ?
pierre estrem
Bonjour Pierre
Les outils peuvent te donner plusieurs sortes de temps:
- temps ELAPSED c'est-à-dire le temps écoulé (y compris les pauses en effet) depuis le démarrage du processus, c'est ce que te donne le etime ou etimes de ps
- temps USER c'est-à-dire le temps passé par le CPU en mode "utilisateur": les temps où le processus est en attente d'interaction d'utilisateur ou d'entrées-sorties ne sera pas compté car le CPU n'exécute pas de code de ce processus
- temps SYSTEM c'est-à-dire le temps passé pour le processus en mode système, par exemple le temps passé à lire un fichier.
Mais je ne connais pas de commande permettant d'avoir le temps elapsed moins les pauses. Je pense que ce que tu demandes correspond à peu près à la commande: ps -p 1304 -o 'bsdtime' (temps user + system d'après le man)
je voulais dire: ps -p $PID -o 'bsdtime'
pardon pour l'erreur
Emmanuel
Amicalement,
Emmanuel
--