6 Les processus
Nous avons dit au début de ce document qu'UNIX est multi-tâches.
6.1 Visualisation et destruction de processus
Pour visualiser les commandes que l'on a lancées, on dispose de la
commande ps. Cette commande dispose de nombreuses options,
parmi lesquelles :
-
-l pour plus d'informations
- -w ou même -ww pour éviter que les lignes
d'affichage ne soient tronquées à la fin de la ligne d'écran
- -x pour voir les commandes système
- -u pour disposer de plus d'informations dans un
format plus lisible
- -a pour ne pas se cantonner à vos processus, mais aussi
ceux des autres utilisateurs.
Parmi ces informations se trouve un numéro sous les lettres PID qui
sert à désigner ce processus lors d'ordres tels que ceux qui suivent.
On peut envoyer des signaux à un processus par la commande kill. Son nom vient du fait qu'initialement il servait
essentiellement à détruire les processus. Nous nous limiterons ici à
cette fonction de la commande kill. kill pid ou plus
fort kill -9 pid détruisent complètement le processus.
6.2 Lancer un programme en tâche de fond
Si un programme n'a pas besoin d'écrire sur le terminal ni d'en
recevoir des ordres, il peut être lancé en tâche de fond, c'est-à-dire
qu'il s'exécute en rendant la main, ce qui permet de continuer à
travailler dans la même fenêtre; l'exemple le plus courant est un
programme qui ouvre ses propres fenêtres et se sert uniquement d'elles
pour communiquer avec l'utilisateur. On lance de tels programmes en
faisant suivre la ligne de commande qui lance le programme d'un
caractère &
(par exemple, emacs &
lance emacs en tâche
de fond).
On peut aussi suspendre l'exécution d'un programme en tapant
simultanément Ctrl et z. On peut alors soit la
relancer normalement (en foreground),
par la commande fg, soit la lancer en tâche de fond (en
background, par la commande
bg.
On peut visualiser tous ses programmes qui tournent en tâche de fond,
par la commande jobs. Lorsqu'il y en a plusieurs, ils sont
présentés suivis d'un numéro et les commandes que l'on peut envoyer à
ces tâches doivent être suivi du caractère %
et de ce numéro
(différent du PID du processus).
Nous avons dit au début de ce document qu'UNIX est
multi-utilisateurs. : plusieurs utilisateurs peuvent être connectés
sur la même machine, même si un seul au plus utilise l'écran qui lui
est associé (voir la section 8).
On peut voir qui est connecté par w, who,
finger (cette commande permet d'obtenir plus d'informations
sur un utilisateur précis en indiquant son nom de login).
Comme dans toute utilisation de ressources limitées, un peu de bon
sens, de tolérance et de convivialité aident à une bonne entente dans la
communauté des utilisateurs.