Depuis quand tourne une tache linux ?

10 réponses
AuteurMessage

krucial |
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 18/09/2007 à 13:18

Salut

J'aimerais savoir si un d'entre vous pourrait m'aider.

J'ai une tache qui quelque fois, je ne sais pourquoi, s'eternise. J'aimerai savoir depuis quand elle tourne. Mais impossible de le faire proprement. Je pensais qu'en allant dans le repertoire de la tache dans /proc/, je trouverais quelque chose, mais non.

Comment, donc, savoir depuis quand tourne une tache ?

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

LePhasme | Guillaume
Membre

Photo de LePhasme

Inscrit le : 09/05/2005

# Le 18/09/2007 à 13:47

Euh au cas ou personne te réponds, une solution assez simplette consisterait à créer un fichier texte avec un l'heure du debut de la tache... après il te suffirait de l'ouvrir lol ;-)
Guillaume, technologue unix au rabais ;-)

Paris Apartments RentalsOuvrir dans une nouvelle fenetre Avertisseur Autonome de FumeeOuvrir dans une nouvelle fenetre ViadeoOuvrir dans une nouvelle fenetre

bhamp0 | Benjamin
Membre

Photo de bhamp0

Inscrit le : 09/05/2005

# Le 18/09/2007 à 14:02

Bon, déjà, un top permet d'afficher le temps d'une tâche, donc on va utiliser ça.
Afin d'éviter le reload permanent, et avoir juste une preview à un instant T de l'état, on ne va faire qu'une itération (donc option -n1).
Pour choisir la tâche dont on veut le temps, on va faire un grep sur le résultat.
Enfin, il faut récupérer la bonne colonne (j'vais utiliser un cut, mais on peut trouver mieux ... en séparant suivant le caractère espace, ça donne la vingtième colonne (y'a des colonnes vides))

D'où :

top -n1 | grep MATACHE | cut -d ' ' -f20


Par exemple, pour avoir le temps de lancement d'IRC chez moi () :
top -n1 | grep irssi | cut -d ' ' -f20

Quand on voit c'qu'on voit, et qu'on entend c'qu'on entend, on a raison d'penser c'qu'on pense !

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 18/09/2007 à 14:16

justement, je voulais pas commencer a decouper le top ou ps. Je pensais que je pourrais des infos ailleurs ... Je veux dire, le top, il se refere bien a quelque chose non ?

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

bhamp0 | Benjamin
Membre

Photo de bhamp0

Inscrit le : 09/05/2005

# Le 18/09/2007 à 14:21

Oui d'ailleurs un ps devrait être mieux que mon top

D'après la doc (man ps) : "This ps works by reading the virtual files in /proc."

Quand on voit c'qu'on voit, et qu'on entend c'qu'on entend, on a raison d'penser c'qu'on pense !

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 18/09/2007 à 14:28

Bin voila, j'ai beau matter les fichiers dans /proc, je ne trouve rien d'interessant, en tout cas, au niveau des durée ou date de debut d'operation.

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 18/09/2007 à 19:22

dob tu veux m'epouser ?

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 20/09/2007 à 18:38

Pour ceux que ca interesse, voila comment je fais :

1 - Je recupere le temps en "jiffies" depuis lequel le processus tourne, depuis le dernier boot (/proc/PID/stat, champ 21). On a de la chance, depuis les kernel 2.6, un jiffies = 1/100 s. Avant, ca pouvait varier suivant les machines...

2 - Je recupere le temps en seconde depuis lequel la machine tourne dans /proc/uptime

3 - Je fais marcher mes connaissances de mathematiques niveau CM2 pour trouver depuis combien de temps tourne le processus.

Merci dob

PS : c'est quoi le "5" dans "man 5 proc" ?

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 20/09/2007 à 20:54

Juste une remarque : si je ne confonds pas les jiffies dépendent de la fréquence de fonctionnement du kernel... qui justement est facilement changeable depuis les kernels 2.6.

En standard je crois qu'on a le choix entre 100, 250 et 1000 Hz. Bien que la plupart des serveurs "web" soient configurés avec un kernel à 100Hz, ce n'est pas forcément le cas de tous.
(il me semble que les kernels Debian sont à 250Hz, un compromis quoi)

Bref, à vérifier à mon avis.


PS : pourquoi tu ne jetterais pas tout "simplement" un oeil au code de "ps" ou "top" ?

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 20/09/2007 à 22:57

Bool a dit :
En standard je crois qu'on a le choix entre 100, 250 et 1000 Hz. Bien que la plupart des serveurs "web" soient configurés avec un kernel à 100Hz, ce n'est pas forcément le cas de tous.
(il me semble que les kernels Debian sont à 250Hz, un compromis quoi)

PS : pourquoi tu ne jetterais pas tout "simplement" un oeil au code de "ps" ou "top" ?


Sur mes serveurs debian, 1 jiffies = 1/100s en tout cas.

Pour PS ou TOP, je n'ai pas penser a matter le code

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

Bool | Olivier
Modérateur

Photo de Bool

Inscrit le : 09/05/2005

# Le 21/09/2007 à 10:25

Yep, j'ai jeté un oeil dans le kernel, en plus de sa fréquence de fonctionnement normale "HZ" il en gère une autre justement à destination des utilisateurs "USER_HZ" qui est à 100 Hz.

daevel : infogérance et conseilOuvrir dans une nouvelle fenetre || moiOuvrir dans une nouvelle fenetre

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 24/11/2024 17:57:55 | Généré en 6.66ms | Contacts | Mentions légales |