edit et corrections d'erreurs factuelles, de calculs et de mise en page
This commit is contained in:
@@ -88,7 +88,7 @@ L'utilisateur a l'impression que les programmes s'exécutent simultanément grâ
|
||||
|
||||
---
|
||||
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Thimothée Decooster
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Timothée Decoster
|
||||
|
||||
Licence CC BY NC
|
||||
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
|
||||
---
|
||||
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Thimothée Decooster
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Timothée Decoster
|
||||
|
||||
Licence CC BY NC
|
||||
|
||||
|
||||
BIN
Processus/HEUeaOHX0AA1EBP.jpeg
Normal file
BIN
Processus/HEUeaOHX0AA1EBP.jpeg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 244 KiB |
@@ -18,9 +18,16 @@ Tous ces programmes sont en réalité des lignes immenses de code et le processe
|
||||
|
||||
## 1. Notion de processus
|
||||
|
||||
Lorsqu'un programme est exécuté, il crée plusieurs processus. En effet, un programme est composé de diverses instructions (lignes de code) qui elles-mêmes forment diverses parties (processus) de celui-ci.
|
||||
Un **processus** est un programme **en cours d'exécution** : lorsqu'on lance un programme, le système d'exploitation crée un processus, c'est-à-dire une instance vivante du programme avec tout ce dont elle a besoin (instructions chargées en mémoire, données, ressources allouées).
|
||||
|
||||
Ces processus sont donc stockés dans une file (tout cela est géré par l'OS [Rappel 1ère]) et sont exécutés un à un.
|
||||
Il ne faut pas confondre les deux :
|
||||
|
||||
- le **programme** est un fichier statique posé sur le disque (la recette de cuisine) ;
|
||||
- le **processus** est son exécution en mémoire (le plat en train de cuire).
|
||||
|
||||
Un même programme peut d'ailleurs être lancé plusieurs fois et donner plusieurs processus distincts (deux fenêtres du même navigateur, par exemple). Un processus peut aussi créer lui-même d'autres processus, appelés **processus fils**.
|
||||
|
||||
Les processus prêts à s'exécuter sont placés dans une file (tout cela est géré par l'OS [Rappel 1ère]) et le processeur les traite à tour de rôle.
|
||||
|
||||
*Exemple de répartition de deux programmes par l'OS :*
|
||||
|
||||
@@ -57,6 +64,14 @@ Il existe aussi deux autres états :
|
||||
|
||||
<img src="assets/etat.png" style="zoom:50%;" />
|
||||
|
||||
### L'ordonnanceur
|
||||
|
||||
C'est **l'ordonnanceur** (*scheduler* en anglais), un composant du système d'exploitation, qui décide quel processus prêt devient élu, et pour combien de temps.
|
||||
|
||||
La politique la plus simple est le **tourniquet** (*round-robin*) : chaque processus reçoit à tour de rôle une petite tranche de temps processeur (quelques millisecondes), appelée **quantum**. Quand son quantum est écoulé, le processus élu repasse à l'état prêt et retourne dans la file. C'est cette alternance très rapide qui donne l'illusion que tout s'exécute en même temps.
|
||||
|
||||
D'autres politiques existent (par priorité, par plus court travail d'abord...), c'est ce que vous manipulerez dans le TP Ordonnanceur.
|
||||
|
||||
## 3. Interblocage :
|
||||
|
||||
L'interblocage intervient lorsque plusieurs processus sont bloqués les uns par les autres.
|
||||
@@ -176,7 +191,7 @@ Pour voir les processus, ici, on utilisera plutôt **TOP** (dispo sous linux ég
|
||||
|
||||
---------
|
||||
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Thimothée Decooster
|
||||
Auteurs : Florian Mathieu, Enzo Frémeaux, Timothée Decoster
|
||||
|
||||
Licence CC BY NC
|
||||
|
||||
|
||||
Reference in New Issue
Block a user