Chapitre1. Les Processus PDF
Chapitre1. Les Processus PDF
Chapitre1. Les Processus PDF
Systèmes d’exploitation2
1ère année Ingénieur en Génie Informatique
Chapitre1.
Les processus
Plan
1. Introduction
2. Appel Système
3. Notions de processus
4. Processus vs Thread
5. Création de processus
H.KRICHENE ZRIDA 2
1
08/02/2023
Interaction
1. Introduction utilisateur/système
❑ Un système d'exploitation SE est déjà défini comme un logiciel destiné à
faciliter l'utilisation d'un ordinateur, puis comme un programme dont la
fonction principale est de déclencher l'exécution d'autres programmes.
❑ Les bibliothèques des appels système sont des procédures mises à la
disposition des programmeurs. Par exemple, un programme C/C++ peut
utiliser des appels système d'Unix/Linux comme open(), write() et read()
pour effectuer des Entrées/Sorties de bas niveau.
❑ L'interpréteur de commandes constitue une interface
utilisateur/système qui est disponible dans tous les systèmes. Il est lancé
dès la connexion au système et invite l'utilisateur à introduire une
commande. Il récupère puis exécute la commande par combinaison
d'appels système et d'outils (compilateurs, éditeurs de lien, etc.)
❑ Nous allons le définir maintenant comme un programme qui permet à
un ordinateur de faire plusieurs choses à la fois => Multitâche
H.KRICHENE ZRIDA 3
2
08/02/2023
H.KRICHENE ZRIDA 6
3
08/02/2023
4
08/02/2023
Mode de fonctionnement
3. Notions de processus d’un processus
H.KRICHENE ZRIDA 10
5
08/02/2023
6
08/02/2023
E
Elu
n
at
(exécution)
te
nt
A
e
dm
d'
on
E
is
/S
si
cti
on
on
on
pti
s
éle
ai
rru
in
Inte
rm
Te
Prét Bloqué
Fin d
'E/S
H.KRICHENE
Les principaux ZRIDA
états d'un processus 13
H.KRICHENE ZRIDA 14
7
08/02/2023
Implémentation de
3. Notions de processus processus
❑ Pour gérer les processus, le SE sauvegarde plusieurs informations
dans des structures de données.
❑ Il existe une table pour contenir les informations concernant tous les
processus créés. Il y a une entrée par processus dans la table, appelée
le Bloc de Contrôle de Processus (PCB).
❑ Chaque PCB comporte des informations sur :
▪ Le PID du processus.
▪ L'état du processus.
▪ Son compteur ordinal (adresse de la prochaine instruction devant
être exécutée par ce processus).
▪ Son allocation mémoire.
▪ Les fichiers ouverts.
▪ Les valeurs contenues dans les registres du processeur,…
H.KRICHENE ZRIDA 15
N.B. Le passage au mode kernel par un appel système n'implique pas nécessairement
un changement de contexte. On reste dans le même processus, sauf qu'on a accès à
des données et des instructions qui sont interdites en mode utilisateur.
H.KRICHENE ZRIDA 16
8
08/02/2023
Création et terminaison de
3. Notions de processus processus (1)
❑ Le SE fournit un ensemble d'appels système qui permettent la
création, la destruction, la communication et la synchronisation des
processus. Les processus sont créés et détruits dynamiquement.
❑ Un processus peut créer un ou plusieurs processus fils qui, à leur
tour, peuvent créer des processus fils sous une forme de structure
arborescente. Le processus créateur est appelé processus père.
❑ Dans certains systèmes, comme MS-DOS, lorsqu'un processus
crée un fils, l'exécution du processus père est suspendue jusqu'à la
terminaison du processus fils. C'est ce qu'on appelle l'exécution
séquentielle. Par contre dans les systèmes du type Unix, le père
continue à s'exécuter en concurrence avec ses fils. C'est ce qu'on
appelle exécution asynchrone.
H.KRICHENE ZRIDA 17
Création et terminaison de
3. Notions de processus processus (2)
❑ Le processus père peut :
▪ contrôler l'usage des ressources partagées et peut avoir une certaine
autorité sur ses processus fils.
▪ suspendre ou détruire ses processus fils.
▪ se mettre en attente de la fin de l'exécution de ses fils.
❑ L'espace d'adressage du processus fils est obtenu par duplication
de celui du père. Il peut exécuter le même programme que son père
ou charger un autre programme.
❑ Un processus se termine par une demande d'arrêt volontaire
(appel système: exit()) ou par un arrêt forcé provoqué par un autre
processus (appel système: kill()).
❑ Lorsqu'un processus se termine, toutes les ressources systèmes
qui lui ont été allouées sont libérées par le système d'exploitation.
H.KRICHENE ZRIDA 18
9
08/02/2023
H.KRICHENE ZRIDA 20
10
08/02/2023
H.KRICHENE ZRIDA 21
H.KRICHENE ZRIDA 22
11
08/02/2023
H.KRICHENE ZRIDA 23
12
08/02/2023
H.KRICHENE ZRIDA 26
13
08/02/2023
H.KRICHENE ZRIDA 28
14
08/02/2023
Terminaison et
5. Création de processus Synchronisation
H.KRICHENE ZRIDA 30
15
08/02/2023
Terminaison et
5. Création de processus Synchronisation
H.KRICHENE ZRIDA 31
16