SE DUTI2 Chapitre1 GeneralitesProcessus

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

Chapitre 01 : Généralités sur les Processus

Dr Mandicou BA
[email protected]
http://www.mandicouba.net

Diplôme Universitaire de Technique (DUT, 2e année)


e
Diplôme Supérieure de Technologie (DST, 2 année)
Option : Informatique

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 1 / 25


Plan du Chapitre

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 2 / 25


Qu’est-ce qu’un processus

Sommaire

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 3 / 25


Qu’est-ce qu’un processus

Partage de l’unité centrale


Mono-programmation
✁ Un seul programme (processus) s’exécute sans interruption :
Si le processus contient une instruction d’E/S, restera inactif durant
une « longue période » en attendant que cette instruction se termine

Multi-programmation
✁ Plusieurs programmes (processus) se partagent les ressources
(mémoire, périphérique, etc.) de l’ordinateur :
problème de protection, de concurrence et contrôle
✁ Le processeur exécute un autre processus au lieu de restant inactif
pendant tout le temps pris par l’instruction d’E/S du 1e processus
✁ Cela donne à l’utilisateur que tous les processus s’exécutent en même
temps : pseudo-parallélisme
sur une machine mono-processeur, un seul processus est exécuté à
un instant donné
Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 4 / 25
Qu’est-ce qu’un processus

Définition d’un processus

Definition
✁ Processus = instance d’exécution d’un programme crée par le SE ou
l’utilisateur
✂ il possède son compteur ordinal, ses registres et ses variables en
mémoire

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 5 / 25


Qu’est-ce qu’un processus

Rôle du SE dans la gestion des processus

✁ Création, suppression et interruption


✁ Ordonnancement des processus : exécution équitable entre processus
tout en privilégiant les processus systèmes
✁ Synchronisation des processus :
Choisir le processus à exécuter à un instant donné
Choisir le moment où interrompre un processus
Choisir le processus qu’il faut exécuter ensuite (le suivant)
Spécifier les ressources dont à besoin (et qu’il faut affecter à) un
processus
✁ Gestion des conflits d’accès ressources partagées
✁ Protection des processus d’un utilisateur contre les actions d’un autre
processus
✁ etc.

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 6 / 25


Cycle de vie de processus

Sommaire

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 7 / 25


Cycle de vie de processus

Cycle de vie d’un processus (1/2)

✁ Processus = suite d’instructions. On peut l’exécuter et l’interrompre :


✂ Peut se trouver dans plusieurs états (actif, suspendu, terminé, en
attente d’un événement)

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 8 / 25


Cycle de vie de processus

Cycle de vie d’un processus (1/2)

1 Naissance d’un processus


2 Transition « actif →↑↓ bloqué » : se produit quand le processus est en
cours d’exécution et a besoin d’une ressource non disponible.
3 Transition « actif →↑↓ prêt » : se produit si le quantum alloué est épuisé
ou si un processus plus prioritaire (processus urgent ou processus
système) arrive.
4 Transition « prêt →↑↓ actif » : se produit quand le SE sélectionne le
processus en question pour l’exécuter.
5 Transition « actif →↑↓ terminé » : se produit quand le processus a fini son
exécution.
6 Transition « bloqué →↑↓ prêt » : se produit quand l’événement externe
attendu par le processus se produit.
7 Transition « bloqué →↑↓ terminé » : se produit quand l’événement
externe attendu par le processus ne peut se réaliser (ex. inter-blocage).
Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 9 / 25
Structures de données pour la gestion d’un processus

Sommaire

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 10 / 25


Structures de données pour la gestion d’un processus

Structures de données utilisées


✁ Pour gérer un processus, le SE manipule deux structures de données :
1 Le bloc contexte d’un processus
2 La table des processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 11 / 25


Structures de données pour la gestion d’un processus

Contexte d’un processus

✁ Structures de données qui décrivent un processus en cours d’exécution


✁ Créées au même temps que le processus et sont mises à jours lors d’une
IT d’un processus
✁ Informations sauvegardées par le SE lors d’une IT d’un processus
✁ Les données d’un contexte d’un processus sont :
le compteur ordinal : adresse la prochaine instruction
le contenu des registres généraux
les registres d’occupation mémoire
le registre de variable d’état
la valeur d’horloge d’un processus
la priorité du processus
✁ Lors de l’IT d’un processus, le SE sauvegarde le contexte de processus
en cours et charge celui du processus à exécuter : commutation de
processus (changement de contexte)
Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 12 / 25
Structures de données pour la gestion d’un processus

Table des processus

✁ Tout processus contient une entrée dans cette table


✁ Cette table contient toutes les informations indispensables au SE pour
assurer une gestion cohérente des processus
✁ Ces informations sont :
Un pointeur vers le bloc de contexte du processus
l’identifiant du processus
son lien de parenté
les fichiers qu’il a ouvert
Occupation mémoire (pointeur sur le segment de code, de données
et de pile)
✁ Cette table est stockée dans l’espace mémoire du SE
✁ Donc aucun processus ne peut y accéder

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 13 / 25


Espace mémoire de processus

Sommaire

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 14 / 25


Espace mémoire de processus

Espace mémoire d’un processus (1/5)

✁ Le mémoire utilisée par un processus est divisée en plusieurs zones,


exactement 4.

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 15 / 25


Espace mémoire de processus

Espace mémoire d’un processus (2/5)

Sagement de code
✁ Copie du segment de code du fichier exécutable
✁ Placé dans des zones fixes de la mémoire (début
de la zone disponible)
✁ La prochaine instruction à exécuter dans ce
segment est repérée par le pointeur d’instruction
✁ Cette zone est en lecture seule
✁ Elle peut être partagée par tous les programmes
exécutant le même programme. Ce qui n’est pas
le cas pour les segment de données et de pile

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 16 / 25


Espace mémoire de processus

Espace mémoire d’un processus (3/5)

Sagement de données
✁ Il se trouve au dessus du segment de code
✁ Il est amené à grandir ou à rétrécir durant
l’exécution
✁ il est composé de :
1 Un segment de données initialisées :
copié directement de l’exécution. Par
exemple, les données initialisées
correspondent aux variables globales et
static initialisées d’un programme C
2 Un segment de données non initialisées :
crée dynamiquement. Les données non
initialisées correspondent aux variables
globales et static non initialisées

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 17 / 25


Espace mémoire de processus

Espace mémoire d’un processus (4/5)

Pile
✁ Sert à stocker les données obtenues en cours
d’exécution. Son nom, pile, (stack en anglais)
vient de la manière dont elle est géré : empiler
puis dépiler les données
✁ Le plus souvent en haut de l’espace d’adressage
et croit vers le bas
Exemple 1 (Appel d’une fonction)
Empiler le nom de fonction, lui passer les
paramètres et variables locales
Exécuter la fonction. Une fois la fonction
terminée, le SE dépile les données utilisées et
retrouve les données d’avant
Poursuivre l’exécution du programme
Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 18 / 25
Espace mémoire de processus

Espace mémoire d’un processus (5/5)

Tas
✁ Est un autre segment utilisé par le système
d’exploitation pour les allocations dynamiques.

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 19 / 25


Interruption de processus

Sommaire

1 Qu’est-ce qu’un processus

2 Cycle de vie de processus

3 Structures de données pour la gestion d’un processus

4 Espace mémoire de processus

5 Interruption de processus

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 20 / 25


Interruption de processus

Interruption d’un processus

Interruption
✁ Dans le cas des transitions « actif →↑↓ bloqué » et « actif →↑↓ prêt » on
parle d’interruption (IT)

D’où viennent les IT


✁ Quand le processus atteint une instruction d’E/S
✁ Le quantum attribué au processus est écoulé
✁ Un processus plus urgent doit être exécuté
✁ Un processus nécessite une ressource (matérielle ou logicielle) ou une
donnée (un résultat calculé par un autre processus, ou un ensemble
d’instructions qui ne sont pas encore chargées en mémoire) détenue par
un autre processus (elle n’est pas encore disponible)

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 21 / 25


Interruption de processus

Interruption d’un processus

Traitement d’une IT
1 Arrivée d’une IT : Le processus en cours est interrompu et un
gestionnaire d’IT est chargé dans les registres du processeurs et
s’exécute pour traiter l’IT en question
2 Une fois le signal IT reconnu, le gestionnaire d’IT accède à la table des
vecteurs d’IT et recherche l’adresse du programme associé et l’exécute
3 Une fois l’IT traitée, le SE charge un autre processus à partir de la file
d’attente et l’exécute

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 22 / 25


Interruption de processus

Interruption d’un processus

Traitement d’une IT
1 Une IT est provoquée par un signal généré soit par un événement interne
soit par un événement externe :
✁ Événement interne : lié au processus
Appel système
Déroutement : dû généralement aux erreurs telles que division par
zéro, débordement de la mémoire, exécution d’une instruction non
autorisée, etc
✁ Événement externe : panne, intervention de l’utilisateur à l’aide
d’une frappe au clavier. C’est l’exemple de «Ctrl+Alt+supp», bouton
«reset», etc.

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 23 / 25


Interruption de processus

Interruption d’un processus

Traitement d’une IT
1 Deux sortes d’interruptions : Matérielles et Logicielles
✁ IT Matérielles (IRQ) : générées par les périphériques. Parviennent
au processeur par l’intermédiaire d’un contrôleur d’IT
✁ IT Logicielles : des IT internes, c’est le processus qui appelle cette
IT à l’aide du numéro d’IT.
: Par exemple, pour appeler une IT DOS, appeler l’IT N°21H
✁ Si plusieurs interruptions arrivent au même temps, alors celle qui a
le plus petit numéro qui a la plus grande priorité :
Exemple : IRQ horloge système = 0, IRQ port parallèle = 7

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 24 / 25


Chapitre suivant : Ordonnancement de Processus

Chapitre 01 : Généralités sur les Processus

Dr Mandicou BA
[email protected]
http://www.mandicouba.net

Diplôme Universitaire de Technique (DUT, 2e année)


e
Diplôme Supérieure de Technologie (DST, 2 année)
Option : Informatique

Dr Mandicou BA (ESP) Systèmes d’exploitation (DUT 2 Informatique) 25 / 25

Vous aimerez peut-être aussi