• [^] # Re: reponse

    Posté par . En réponse au message comment savoir si un processus a planté. Évalué à 2.

    Ah oui coté formulation ça se pose là...

    Tu es sévère, pour moi sa formulation de base m'a fait immédiatement pensé à un process "bloqué".

    Sinon, une autre méthode, moins fiable mais un chouia moins violente, c'est de surveiller l'évolution des fichiers /proc/<pid>/stat ou encore statm et io: tu dumpes dans un coin, tu attends X secondes, tu redumpes et tu compares: si ça diffère entre deux dumps, c'est qu'il se passe des choses. Sinon, c'est qu'il se passe rien.

    Ex:

    ~$ cat /proc/20783/stat > /tmp/1
    ~$ cat /proc/20783/stat > /tmp/2
    ~$ cat /proc/20783/stat > /tmp/3
    ~$ cat /proc/20783/stat > /tmp/4
    ~$ md5sum /tmp/[1-4]
    77bfb8fb645744baf6b2f230c21ed3ab /tmp/1
    77bfb8fb645744baf6b2f230c21ed3ab /tmp/2
    f9d987e43632b72f935a90b8532b163d /tmp/3
    f9d987e43632b72f935a90b8532b163d /tmp/4

    Après, le risque, c'est que si le soft en question idle (parce qu'en attente d'une entrée quelconque) tu risques de le croire, à tort, planté.