Annonce

Réduire
Aucune annonce.

Processus

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Processus

    Bonsoir,
    J’espère écrire dans la bonne catégorie (si ce n'est pas le cas je m'excuse).
    Alors voila mon soucis : j'aimerai savoir si sous linux il est possible de savoir si un processus va être stopper avant qu'il le soit. Par exemple imaginons que je lance firefox, puis que je le stop avec un signal, comment je pourrais faire pour qu'il y est un message (sur un autre terminal par exemple) avant que firefox s'arrête. Puis après ce message firefox est arrêté.
    J'espère que ma question est assez clair ^^'
    Merci d'avance pour vos réponses !
    Respectueusement,
    Bravej

  • #2
    Salut Brave],

    De se que je connais à propos des signaux et des processus, je pense que tu pourrais écrire un petit programme en C en redéfinissant le traitement du signal pour qu'il affiche un message,

    tu peux redéfinir le fonctionnement d'un signal grâce à la fonction " signal( SIGNAL_A_REFEFINIR , FONCTION_A_EXECUTEE ) ", donc sa donnerait un programme du genre :

    [ 1 ] - Récupérer le PID du programme( firefox ) ou le lancer directement avec ton programme
    [ 2 ] - Redéfinir le traitement du signal
    [ 3 ] - Mettre en attente le programme jusqu'à interception du signale voulu

    Par contre, en y pensant, même si tu arrives a récupérer le PID de firefox, je ne connais aucun moyen d'intercepter les signaux qu'il reçoit, donc j'aurais directement lancer firefox avec le même
    programme dans un processus fils par exemple( fork() ), bref à toi de voir.

    Cordialement
    deux et deux font cinq

    Commentaire


    • #3
      Bonjour,
      Merci pour ta réponse Shirocen, mais j'ai un problème avec ta solution. Je vois pas vraiment comment récupérer le PID (donc de firefox par exemple) et pouvoir lui dérouter les signaux qui lui sont parvenu (donc lui appliquer la fonction signal).
      De plus le fonction signal interdit le déroutement de certain signaux (comme SIGKILL).

      Respectueusement,
      Bravej

      Commentaire


      • #4
        Je vois pas vraiment comment récupérer le PID
        À toi de nous dire, tu connais un langage de programmation ? Tu es sur quel OS ? etc... Bref il faut des infos précises.

        Ensuite je confirme ce que dit shirocen, il faut créer un processus enfant, et le gérer à partir du processus père !

        Commentaire


        • #5
          Bonjour
          Dsl j'avais oublié ces détails pour le langage sa serai plutot en c ou c++ et l'os cest linux.
          Oui jai bien compris sa solution mais la le principe cest que sa soit des processus indépendant sans lien de parenté^^´
          Respectueusement,
          Bravej

          Commentaire


          • #6
            Dans ces cas là ça devient difficile, voir du côté des mots clé XUL, XPCOM, API XPCOM, ... je peux guère t'aider plus... Je dis XUL, car c'est un langage naturel pour Mozilla. Autre langage qu'il comprend naturellement, c'est le Javascript !

            Bon courage dans tes recherches.

            Commentaire


            • #7
              Merci pour tes réponses mais firefox était juste une exemple le but et de le faire pour tout les processus.
              J'ai pensé également a la fonction waitpid mais je pense que sa ne marche que pour les pères et les fils
              Respectueusement,
              Bravej

              Commentaire

              Chargement...
              X