Se Linux Tp3

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 7

Système d’exploitation 2 : Linux-PR 2020-2021

Institut Supérieur des Sciences Appliquées et de Technologie de Sousse

Prepa-A2-01 ; Prepa-A2-02 ; Prepa-A2-03 ; Prepa-A2-04 Enseignante : Amani Braham


Mail : amani.braham@issatso.u-sousse.tn

TP03 : Gestion des processus

Ce TP a pour objectif de :

 Maîtriser les commandes de gestion des processus.


 Savoir observer les processus s’exécutant sur une machine.
 Manipuler un processus en cours d’exécution.
 Savoir tuer un ou plusieurs processus.

Pour ce TP vous devez rédiger un compte-rendu (nom_prénom_groupe_CTP03.docx)


qui sera envoyé par mail à la fin de la séance. (Précisez dans l’objet : TP03-Prepa-A2-
Groupe)

Rappel et Révision

1. Introduction

On appelle processus un objet dynamique correspondant à l’exécution d’une suite


d’instructions : un programme qui s'exécute, ses données, ainsi que d’autres informations
sur son contexte d’exécution.

Un processus possède les caractéristiques qui permettent au système de l’identifier. Parmi


ces caractéristiques :
 Etat : exécution, suspendu, etc.
 Identifiant du processus.
 Identifiant du processus qui lui a donnée naissance : processus parent.
 Identifiant de l’utilisateur qui l’a lancé.
 Compteur ordinal : indique la prochaine instruction à exécuter.
 Pile d’exécution : mémorise l’empilement des appels de fonction.
 Données en mémoire.
 Etc.

Un processus s’exécute soit en avant-plan (foreground), soit en arrière-plan


(background).

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 1


2. Commandes Shell de gestion de processus :

 La commande ps : $ ps [options]
Permet d’obtenir la liste des processus actifs sur le Shell.

L’option –e donne des informations sur tous les processus en cours et l’option –f permet
d’avoir des informations détaillées sur les processus.

COLONNE DEFINITION
UID Identifiant de l’utilisateur (User ID).
PID Identifiant du processus (Process ID).
PPID Identifiant du processus parent (Parent Process ID).
C Facteur de priorité (plus la valeur est grande plus la priorité
est élevée).
STIME Heure de lancement du processus.
TTY Nom du terminal depuis lequel le processus a été lancé.
TIME Durée de traitement du processus.
CMD Commande exécutée.

L’option –u permet d’obtenir la liste des processus lancés par un utilisateur particulier.

 La commande pstree : $ pstree

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 2


Permet de visualiser l’arborescence des processus.

 La commande top : $ top [options]


Permet de gérer les processus en temps réel (visualisation dynamique des processus).

Dès que top est lancée, il est possible d’exécuter des commandes interactives :
 N : Classer les processus par PID.
 A : Classer les processus dans l’ordre chronologique.
 P : Classer les processus par rapport à leur utilisation CPU.
 M : Classer les processus par rapport à leur utilisation de la mémoire.
 k : Tuer un processus (PID sera demandé).
 q : Quitter l’utilitaire top.

 La commande kill: $ kill [-l] -Num_signal PID [PID2...]

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 3


Permet d’envoyer des signaux à un processus dont on connaît son identifiant. Cette
commande ne sert pas seulement à « tuer » un processus ; on peut lister les signaux
disponible avec la commande kill –l.

SIGNAL DESCRIPTION
SIGSTOP (19) Arrêter un processus.
SIGCONT (18) Continuer un processus arrêté.
SIGTERM (15) Signifier au processus qu’il doit se terminer.
SIGKILL (9) Tuer un processus.

 Commandes pour manipuler les jobs :


Il est possible de démarrer plusieurs processus appelés aussi « jobs ».
& : Démarrer un processus en arrière-plan.

jobs : Afficher la liste des tâches du Shell courant.

fg %n : Relancer l’exécution d’un processus en arrière-plan en un processus en


avant-plan.

Ctrl + Z : Suspendre un job

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 4


bg %n : Relancer l’exécution d’un processus suspendu en processus en arrière-
plan.

kill %n : Tuer un job.

Pour lancer un processus en arrière-plan, on utilise le symbole &. Lorsqu’on


ferme la console, le processus est arrêté. Pour éviter qu’un processus ne s’arrête
lorsque son parent se termine, on utilise la commande nohup.

 Commande time: $ time


Permet de mesurer les durées d’exécution d’une commande processus et retourner trois
valeurs (real, user, system).

Travail Demandé

A. Exercices de prise en main

1) Lister tous les processus lancés sur le système. Affichez la liste des processus dont vous
êtes propriétaire.
2) a- Lister de nouveau les processus lancés sur le système de façon détaillée.
b- A quoi correspond l’information TIME ?
c- A quelle heure votre machine a-t-elle démarré ?
3) Affichez la hiérarchie des processus s’exécutant sur le système.
4) Quelle est la commande qui permet d’envoyer un signal à un processus ?

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 5


5) Afficher en temps réel les informations sur l’ensemble de processus exécutés sur votre
machine.
6) a- Consulter le man de nice et renice. A quoi sert les commandes nice et renice?
c- La commande top consomme des ressources. Faites en sorte que sa priorité soit de
« 18 ».
7) a- Consulter le man de kill. A quoi sert cette commande ? Placer le processus en arrière-
plan sans le terminer.
b- Consulter le man de ps. A quoi sert cette commande ? Placer le processus en arrière-
plan sans le terminer.
c- Lister les tâches lancées par le Shell.
d- Réafficher le man de kill.
e- Ouvrez un deuxième terminal et envoyez le signal SIGTERM au processus affichant
le man de kill.
f- Retourner dans le premier terminal, lister les tâches lancées par le Shell, et réactiver
le man de ps.

B. Exercices avancés

Exercice 1

1) Dans un système Linux, quel est le processus qui n’a pas un père ? Préciser son PID.
2) Utiliser la commande ps et trouver le PID du processus dhclient.
3) Utiliser la commande pstree pour trouver le PID du processus dhclient et le nom de
son processus père.
4) Consulter la documentation de la commande yes. A quoi sert cette commande ?
5) Lancer la commande: $ yes “Hi, my name is yourname”.
6) Pendant l’exécution de la commande yes, lancer la commande top dans un autre
terminal. Quels sont les processus qui consomment le plus le CPU ?

Exercice 2

1) Lancer la commande xeyes.


2) Pouvez-vous exécuter une autre commande dans le même Shell ? Justifiez.
3) Suspendre l’application xeyes.
4) Ramener l’application en avant-plan.
5) Suspendre à nouveau l’application xeyes.
6) Continuer l’exécution de l’application xeyes tournant en arrière-plan.
7) Pouvez-vous exécuter une autre commande dans le même Shell ? Justifiez.

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 6


8) Lancer la commande gedit en avant-plan. Fermer la fenêtre de l’interpréteur de
commandes à partir de laquelle l’application est lancée. Que se passe-t-il ?
9) Lancer la commande gedit en arrière-plan. Fermer la fenêtre de l’interpréteur de
commandes à partir de laquelle l’application est lancée. Que se passe-t-il ?
10) Comment faire pour éviter qu’un processus ne s’arrête lorsque son parent se termine ?
Tester avec la commande gedit.

Exercice 3

1) a- Lancer les commandes sleep 1111, sleep 2222 et sleep 3333 en arrière-plan.
b- Que signifie ce qui est retourné à l’écran ?
2) Afficher la liste des tâches en cours.
3) Que signifient les caractères + et - dans la liste précédente ?
4) Lancer la commande sleep 4444 en avant-plan.
5) Interrompre le processus en avant plan en utilisant Ctrl+Z. Quel est le numéro de travail
du processus interrompu ?
6) Afficher à nouveau la liste des tâches en cours.
7) Relancer en arrière-plan la dernière commande sleep.
8) Arrêter l’exécution de la première commande sleep en utilisant son numéro de travail.
9) Afficher à nouveau la liste des tâches en cours.
10) Arrêter l’exécution de la deuxième commande sleep en utilisant son PID.
11) Afficher à nouveau la liste des tâches en cours.
12) Passer en avant-plan les dernières commandes sleep et arrêter l’exécution de ces
commandes.
13) Afficher à nouveau la liste des tâches en cours.

Amani Braham TP03- Système d’exploitation 2 : Linux-PR 7

Vous aimerez peut-être aussi

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy