Exercice sur la gestion des processus Unix

  1.  Affichez la liste des processus associés à votre terminal. Affichez la liste des processus dont vous êtes propriétaire. Recommencez en utilisant les options -l et -f. À quoi correspondent les colonnes PID et PPID ?
  2.  Lancez une commande longue en arrière plan. Quel est le comportement du processus associé lorsqu'il reçoit les signaux suivants :
    • sigkill (9)
    • sigstop (23)
    • sigcont (25)
  3.  Utilisez la commande nice pour lancer des commandes ayant une faible priorité.
  4.  Interprétez la hiérarchie des processus qui vous appartiennent.
  5.  La commande ps | wc compte deux processus en plus de ceux qui existent réellement lorsqu'on lance la commande. Pourquoi ?
  6.  Donner deux commandes pour reprendre l'exécution d'une instruction interrompue par un ^Z.
  1. Affichez la liste des processus associés à votre terminal. Affichez la liste des processus dont vous êtes propriétaire. Recommencez en utilisant l'option -l. À quoi correspondent les colonnes PID et PPID ? bireme ~ $ ps PID TT S TIME COMMAND 16970 pts/2 S 0:00 /usr/local/util/bin/zsh4 16992 pts/2 S 0:07 vim systeme-sol.tml 17382 pts/3 R 0:00 /usr/local/util/bin/zsh4bireme ~ $ ps -l F UID PID PPID %C PRI NI SZ RSS WCHAN S TT TIME COMMAND 8 9625 16970 16967 0 48 20 4032 3152 mutex_ex S pts/2 0:00 /usr/local/u 8 9625 16992 16970 1 58 20 4312 3760 mutex_ex S pts/2 0:07 vim systeme- 8 9625 17382 17379 0 48 20 3912 2840 mutex_ex S pts/3 0:00 /usr/local/u

    Les numéros apparaissant dans la colonne PID sont les numéros des différents processus. Le PPID désigne lui le numéro du processus père du processus en question. Par exemple, ici, le processus 16992 (vim) est un fils du processus 16970 (zsh).

  2. Lancez une commande longue en arrière plan. Quel est le comportement du processus associé lorsqu'il reçoit les signaux suivants :

    Pour envoyer un signal à un processus, on peut faire :

    bireme ~ $ kill -23 17382

    17382 désignant un numéro de processus (PID) et 23 le numéro d'un signal (SIGSTOP).

    • sigkill (9)

      Le processus est tué sans pouvoir de défendre.

    • sigstop (23)

      Le processus s'interrompt.

    • sigcont (25)

      Le processus interrompu redémarre.

  3. Utilisez la commande nice pour lancer des commandes ayant une faible priorité. bireme ~ $ nice -19 ./calcul
  4. Interprétez la hiérarchie des processus qui vous appartiennent.

    Pour vous aider à comprendre, vous pouvez afficher un arbre en lançant la commande pstree (FreeBSD) ou ptree (Solaris).

  5. La commande ps | wc compte deux processus en plus de ceux qui existent réellement lorsqu'on lance la commande. Pourquoi ?

    Ce sont les processus associés aux commandes ps et wc que vous venez de lancer !

  6. Donner deux commandes pour reprendre l'exécution d'une instruction interrompue par un ^Z.

    Vous disposez des commandes fg et bg. fg permet de poursuivre le déroulement du programme. bg le fait aussi mais il relance le programme en tâche de fond.

    Auteur : Joël Riou.

Article publié le 29 Août 2010 Mise à jour le Mardi, 10 Août 2021 22:48 par GC Team