Académique Documents
Professionnel Documents
Culture Documents
___________________________________________________________________________
EX1-Identifier un processus : démarrer le terminal, détecter le processus correspondant au terminal appelé “bash” et
Identifier les informations suivantes (pidof cmde : affiche le pid d’un processus démarré par la commande : cmde)
1. Identifiant de processus (PID ) : ………… 4. L'utilisateur (UID) : …………………
2. Parent du processus ( PPID ) …………… 5. Priorité (PRI ) : …………………………
3. L'état du processus : …………………..... 6. La commande correspondante : …………
-----------------------------------------------------------------------------------------------------------------------------------------------------------
RMQ : Dès que top est lancé, il est possible d'exécuter des commandes interactives: N (par pid) - A (ordre
chronologique) - P (utilisation de CPU) - M (utilisation de la mémoire) - K (tuer un processus dont le pid sera
demandé).
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Si vous connaissez le PID, il est possible d'envoyer un signal au processus : La syntaxe d’envoi d’un signal est :
kill -signal pid où signal est un numéro ou un nom de signal (le signal par défaut est SIGTERM).
-SIGSTOP (17) pour arrêter un processus. SIGCONT (19) pour redémarrer un processus arrêté.
-SIGKILL (9) pour tuer un processus. SIGTERM (15) pour signifier au processus qu'il doit se tuer.
Démarrer le programme xeyes (s’il existe) : …………………... Identifier son PID ……….…… et PPID ………………
arrêter le processus : ……..…………..……..………. redémarrer le processus …………………………… Tuer le
processus ………………………….………..…. que ramarquez-vous…………………………………………………..
-----------------------------------------------------------------------------------------------------------------------------------------------------------
EX4 :
1- Quelle commande vous permet de vérifier facilement quel utilisateur consomme la plus grande partie des
ressources processeur du système ? ………………….. lequel …………………………………………………...
2- La commande (pstree), est-ce que tous les processus ont un processus parent ? …………………………………..
3- Qu'arrive t-il si un processus enfant perd son parent ?, tester ……………………………………………………..
4- Quelle commande permet d'envoyer un signal à un processus ? ………………………………………………..
5- De quel élément avez-vous besoin pour envoyer un signal à un processus? ………………………………………
…………………………………………………………………………………………………………………………
6- Quel signal reçoivent tous les processus lorsque la session “bash” à partir de la quelle ils ont été lancés se
termine? ……………………… tester cette opération …………………………………………………………...
7- Quel est le processus de l’utilisateur courant puis celui de root qui utilise le plus de mémoire ?
EX5:
1-Ouvrez deux terminaux. Dans l'un deux, tapez la suite de commandes suivante :
# while true ; do echo -n la date est :; date; done
Dans l'autre terminal, vérifiez que vous avez la possibilité de stopper et de redémarrer les travaux.
………………………………………………………………..……………………………………………………………
2- Faites que l'affichage de sortie de la commande « ps -o champ1, champ2, ...» soit formatée de la manière suivante:
username, commande et nice value. La commande est: ……………………………………….................................
3-Arrêtez tous les processus nommés bash qui appartiennent à votre propre utilisateur.
4- Avec la commande top, affichez les processus de root puis taper l’option : …….. pour arrêter des processus ?
……..………………………………………………………………….…………………………………………………….
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Ex7:
1. Ouvrez le manuel (man cmde) des commandes suivantes en arrière plan, une à une : ps, top, kill, ls.
2. Affichez la liste des PIDs des processus suspendus à l'aide de la commande jobs
……………………………………………………………………………………………………………...…….
3. Utilisez la commande kill et les signaux correspondants pour arrêter ces processus, commencer par le premier
créé, puis le suivant …………………………………………………………………………………...………...
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Ex8:
1. Copiez le fichier /dev/random dans le répertoire courant.
2. Si la copie n'est pas terminée au bout de 5 secondes, suspendez le processus et
relancez le en tâche de fond.
3. Affichez la taille du fichier copié à avec : ls -l ………...
4. Patientez quelques secondes, puis vérifiez si le processus cp est toujours en cours.
5. Si c'est le cas, affichez à nouveau la taille du fichier. …………..
NB: Le fichier /dev/random est un fichier virtuel, au même titre que /dev/null. Lorsqu'on lit son
contenu, ce fichier produit des données aléatoires, sans jamais s'arrêter.
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Écrire une commande qui affiche le contenu d’un fichier f1 ( cat …) qui doit afficher le résultat
sur écran, si des erreurs sont produites, alors elles seront insérées dans le fichier f-erreur.
-----------------------------------------------------------------------------------------------------------------------------------------------------------
Soit la commande “ls -l” qui affiche le contenu du dossier courant, soit la commande “wc -l” qui
compte le nombre de lignes; écrire une commande utilisant les tubes pour compter le nombre de fichier se
trouvant dans le dossier /etc : ………………………………………………………………………………...
EX11:
-----------------------------------------------------------------------------------------------------------------------------------------------------------
L’arrêt se fait avec CTR-C ou bien envoie d’un signal de terminaison normale SIGTERM (15) ou aussi avec
la terminaison forcée ou destruction SIGKILL (9)
La syntaxe : kill -Nom_ou_numero_du_signal pid_du_processus
-----------------------------------------------------------------------------------------------------------------------------------------------------------
NB : min : Les minutes ; h : Les heures ; jm : Les jours dans le mois ; m : Les mois ; js : Les
jours de la semaine ; user : L’utilisateur système sous lequel la tâche sera réalisée ; cmde : La
commande à réaliser ;
Ouvrir le fichier : log pour vérifier son contenu. (avec la commande : cat log )
expliquer : …………......................................................................................................................................................
3. Dans le terminal tty2, utiliser la commande (tail -f log) pour afficher en temps réel le contenu du fichier log, quel
résultat ? ……………………………………………………………………………………………………………...
4. Dans le tty1, interrompre le processus en cours d’exécution en utilisant Ctrl+Z. Quel est le numéro de travail (job)
6. Dans le tty1, lancer à nouveau le processus arrêté mais en arrière plan. ………………………..
7. Vérifier si le travail déjà arrêté est en cours d’exécution…………………… Vérifier dans tty2, l’état de
8. Dans tty2, vérifier que les trois processus sont en cours d’exécution et consulter le fichier /tmp/log ……………..
9. Dans tty1, utiliser ensuite kill pour envoyer un SIGSTOP au numéro de travail du premier
10. Relancer le travail du premier processus à l’aide de kill et le signal SIGCONT. ……………………….
11. Utiliser SIGTERM pour terminer les travaux [2] et [3]. Vérifier avec jobs qu’ils sont terminés.
12. Vérifier si tous les processus ont été terminés, sinon terminer ceux qui restent …….