Chapitre 3 SE
Chapitre 3 SE
Chapitre 3 SE
Objectifs :
Connaître la notion de processus,
Connaître les caractéristiques d’un processus ainsi que son contexte
Connaître la notion d’interruptions et de ressources
Comprendre les différents états d’un processus.
Eléments de contenu :
1. Notion de processus
2. Bloc de contrôle d’un processus
3. Les interruptions
4. Les ressources
5. Cycle de vie d’un processus
6. Ordonnancement
Définition 2 : un processus est l’entité crée par le S.E pour l’exécution d’un programme.
Chaque fois qu’on lance un programme, un processus est créé durant l’exécution de durant
l’exécution du programme.
Attention : ne pas confondre un processus (aspect dynamique, exécution qui peut être
suspendue, puis reprise), avec le texte d’un programme exécutable (aspect statique).
Processus système : processus lancé par le système (init processus père des tous les
processus du système)
Processus utilisateur : processus lancée par l’utilisateur (commande utilisateur)
Un processus peut (père) créer d’autres processus (fils) qui hérite les descripteurs de
son père. Ce dernier à son tour crée d’autres processus. Un processus a un seul père
mais peut avoir plusieurs fils
Les processus peuvent se terminer ou ils peuvent être éliminés par d’autres processus
(la primitive kill). A la destruction d’un processus, on libère toutes les ressources
qu’il avait.
Dans certains cas, la destruction d’un processus entraîne l’élimination de ces
descendants ; cette opération n’affecte pas les processus qui peuvent continuer
indépendamment de leur père (processus orphelins).
Les appels relatifs aux processus permettent généralement d’effectuer au moins les actions
suivantes :
- Création d’un processus (fils) par un processus actif (d’où la structure d’arbre de
processus gérés par un SE)
- Destruction d’un processus
- Suspension et reprise d’un processus, grâce à l’Ordonnanceur de processus
- Demande de mémoire supplémentaire ou restitution de mémoire inutilisée
- Attendre la fin d’un processus fils
- Remplacer son propre code avec d’autres processus
- Echanges de messages avec d’autres processus
- Spécification d’actions à entreprendre en fonction d’événements extérieurs
asynchrones
- Modifier la priorité d’un processus
2
Système d’exploitation-Gestion des processus
Les BCP sont rangés dans une table en mémoire centrale à cause de leur manipulation
fréquente.
Chaque niveau d'interruption est affecté d'une priorité différente. En effet si deux niveaux
étaient activés simultanément il se produirait un conflit. Le système d'exploitation le résout en
traitant l'interruption la plus prioritaire. Ainsi l'activité qui a pour mission de contrôler la
présence de la tension d'alimentation - elle n'existe pas dans toutes les machines - et de
basculer le fonctionnement sur des batteries de sauvegarde doit être la plus prioritaire.
Lorsqu'elle détecte une variation anormale de la tension, elle arrête immédiatement tout
fonctionnement et commute l'alimentation électrique. Par convention le niveau de priorité le
plus élevé est 0. La priorité décroît lorsque sa valeur augmente.
On dit qu’une ressource est en mode d’accès exclusif si elle ne peut être allouée à plus un
processeur à la fois. Sinon, on parle de mode d’accès partagé. Un processus possédant une
ressource peut dans certains cas en modifier le mode d’accès.
Exemple : un disque est une ressource à accès exclusif (un seul accès simultané), une zone
mémoire peut être partagée.
3
Système d’exploitation-Gestion des processus
4
Système d’exploitation-Gestion des processus
3.6 Ordonnancement
On appelle ordonnancement la stratégie d’attribution des ressources aux processus qui en font
la demande. Différents critères peuvent être pris en compte :
5
Système d’exploitation-Gestion des processus
Bibliographie
http://www-int.impmc.upmc.fr/public/Enseignement/ye/informatique/systemes/chap2/22.html