Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les...
Transcript of Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les...
![Page 1: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/1.jpg)
Les ProcessusLes Threads
Ordonnancement
Processsus, Thread et OrdonnancementIFIPS – Formation Continue
Joel Falcou - [email protected]
Bat. 490 - Bureau 104
2008-2009
J. Falcou Système
![Page 2: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/2.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Définitions
Un programme
Code décrivant une tacheLangage machine dans un fichier
Un processeurAutomate électronique de traitementChange son état en fonction des instructions
Un processusUn programme exécuté par un processeur
J. Falcou Système
![Page 3: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/3.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Définitions
Un programme
Code décrivant une tacheLangage machine dans un fichier
Un processeurAutomate électronique de traitementChange son état en fonction des instructions
Un processusUn programme exécuté par un processeur
J. Falcou Système
![Page 4: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/4.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Définitions
Un programme
Code décrivant une tacheLangage machine dans un fichier
Un processeurAutomate électronique de traitementChange son état en fonction des instructions
Un processusUn programme exécuté par un processeur
J. Falcou Système
![Page 5: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/5.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Propriétés des processus
ObjectifsSéparer les différentes tâches du systèmeGestion des fichiers/applicationsPermettre le multitache
ConséquencesChaque processus doit respecter les autres
J. Falcou Système
![Page 6: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/6.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Propriétés des processus
ObjectifsSéparer les différentes tâches du systèmeGestion des fichiers/applicationsPermettre le multitache
ConséquencesChaque processus doit respecter les autres
J. Falcou Système
![Page 7: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/7.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Structure d’un processus
EnvironnementVariables héritéesForme générale : PATH=/usr/binen C : getenv() et setenv()
J. Falcou Système
![Page 8: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/8.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Structure d’un processus
Le TasDonnées globales statiquesVariables allouées dynamiquementPartagées par tout les threads duprocessus
J. Falcou Système
![Page 9: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/9.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Structure d’un processus
La PileVariables temporaires duprogrammeChangements de contexteEn général limitée
J. Falcou Système
![Page 10: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/10.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Structure d’un processus
Le CodeRecopie du programme machineFixe et protégé en mémoireSegment exécutable du processus
J. Falcou Système
![Page 11: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/11.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Cycle de vie d’un processus
Démarrage
Chargement du codeÉdition des liens dynamiquesRecopie de l’environnementInitialisation du tasInitialisation du pointeur de pileLancement premiere instruction
Comment ?Unix : fork(),exec()Windows : createprocess()
J. Falcou Système
![Page 12: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/12.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Cycle de vie d’un processus
Démarrage
Chargement du codeÉdition des liens dynamiquesRecopie de l’environnementInitialisation du tasInitialisation du pointeur de pileLancement premiere instruction
Comment ?Unix : fork(),exec()Windows : createprocess()
J. Falcou Système
![Page 13: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/13.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Cycle de vie d’un processus
En cours d’exécutionExecution instruction par instructionMise en attente si :
Demande d’E/S a satisfaireInterruptions matérielles
Allocation des ressources sur demande
J. Falcou Système
![Page 14: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/14.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Cycle de vie d’un processus
J. Falcou Système
![Page 15: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/15.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Création d’un processus#include <stdio.h>#include <sys/types.h>#include <unistd.h>int main(){
pid_t pere,fils;int ret,x=1;printf("Starting ...\n");
fils = fork();if (fils==-1) fprintf(stderr, "fork failed");else{
if (fils==0) /* c’est le fils */{
printf("%d: Je suis le fils de %d \n", getpid(), getppid());sleep(20); x=2;printf("%d: Je sort \n",getpid());exit(20);
}else{
printf("%d: Je suis le pére de %d \n", getpid(), fils);waitpid(fils, &ret, 0);printf("%d: Le processus fils %d est sorti (code %d)\n", getpid(), getppid(),ret);
}}
}
J. Falcou Système
![Page 16: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/16.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Recouvrement de processus
En cours d’exécutionRemplacement du code par un nouveauRemise a zéro de la pileRemise a zéro du tasCopie des descripteurs noyauxHéritage de l’environnement
On ne revient pas d’un recouvrement
J. Falcou Système
![Page 17: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/17.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsGestion des processusMise en œuvre
Recouvrement de processus#include <stdio.h>#include <sys/types.h>#include <unistd.h>int main(){
char *argu[3];pid_t pere,fils;int vingt,x=1;
fils = fork();if (fils==-1) fprintf(stderr, "fork failed");else{
if (fils==0) /* c’est le fils */{
printf("%d: Je suis le fils de %d \n", getpid(), getppid());argu[0] = "";argu[1] = "-a";argu[2] = NULL;execv("/bin/uname", argu);printf("invisible !");
}else{
printf("%d: Je suis le pére de %d \n", getpid(), fils);waitpid(fils, &vingt, 0);printf("%d: Le processus fils %d est sorti \n", getpid(), getppid());
}}
}J. Falcou Système
![Page 18: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/18.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Thread vs Processus
DéfinitionUn thread est l’unité d’ordonnancement
Multi-thread = actions simultanées sur des ressources partageables
Gestion 10 à 100 fois plus rapide que pour les processus
Implantés en mode utilisateur, noyau ou hybride
J. Falcou Système
![Page 19: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/19.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Thread vs Processus
DéfinitionUn thread est l’unité d’ordonnancement
Multi-thread = actions simultanées sur des ressources partageables
Gestion 10 à 100 fois plus rapide que pour les processus
Implantés en mode utilisateur, noyau ou hybride
Gestion en mode User SpaceRapidePrécaution vis à vis des appels systèmesNotion de Fibre
J. Falcou Système
![Page 20: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/20.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Thread vs Processus
DéfinitionUn thread est l’unité d’ordonnancement
Multi-thread = actions simultanées sur des ressources partageables
Gestion 10 à 100 fois plus rapide que pour les processus
Implantés en mode utilisateur, noyau ou hybride
Gestion en mode Kernel SpaceUne fonction de thread = 1 appel systèmeBon couplage avec l’ordonnanceurGestion efficace des appels systèmes internes
J. Falcou Système
![Page 21: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/21.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Relation Processus-Threads
DéfinitionUn processus peut contenir plusieurs Threads simultanément
Ressources spécifiquesles Pilesle contexte d’appel
Ressources partagéesle Tasles descripteurs de fichiersle processeur (hyper-threading)
Nécessité de gérer ces partages
J. Falcou Système
![Page 22: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/22.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Relation Processus-Threads
DéfinitionUn processus peut contenir plusieurs Threads simultanément
Ressources spécifiquesles Pilesle contexte d’appel
Ressources partagéesle Tasles descripteurs de fichiersle processeur (hyper-threading)
Nécessité de gérer ces partages
J. Falcou Système
![Page 23: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/23.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Relation Processus-Threads
DéfinitionUn processus peut contenir plusieurs Threads simultanément
Ressources spécifiquesles Pilesle contexte d’appel
Ressources partagéesle Tasles descripteurs de fichiersle processeur (hyper-threading)
Nécessité de gérer ces partages
J. Falcou Système
![Page 24: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/24.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
API et standards
Plusieurs variantes ...Posix le plus standardWinThreadJava.Thread géré par la machine virtuelle
Pièges à éviterVariables globalesDebordement de pilesGestion des signaux
J. Falcou Système
![Page 25: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/25.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
API et standards
Plusieurs variantes ...Posix le plus standardWinThreadJava.Thread géré par la machine virtuelle
Pièges à éviterVariables globalesDebordement de pilesGestion des signaux
J. Falcou Système
![Page 26: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/26.jpg)
Les ProcessusLes Threads
Ordonnancement
DéfinitionsMise en œuvre
Threads POSIX par l’exemple#include <stdio.h>#include <stdlib.h>#include <pthread.h>
void *my_process (void * arg){
int i;
for (i = 0 ; i < 5 ; i++) {printf ("Thread %s: %d\n", (char*)arg, i);sleep (1);
}pthread_exit (0);
}
int main(){
pthread_t th1, th2;void *ret;
pthread_create (&th1, NULL, my_process, "1");pthread_create (&th2, NULL, my_thread_process, "2");
pthread_join (th1, &ret);pthread_join (th2, &ret);
}
J. Falcou Système
![Page 27: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/27.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Gestion réaliste des processus
ProblématiqueUn processus = ressourcesPlusieurs processus ? ? ?Il faut partager les ressources
L’ordonnancementSélectionner un processus parmi les activablesQuelles politiques ?Quelle représentation ?
J. Falcou Système
![Page 28: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/28.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Gestion réaliste des processus
ProblématiqueUn processus = ressourcesPlusieurs processus ? ? ?Il faut partager les ressources
L’ordonnancementSélectionner un processus parmi les activablesQuelles politiques ?Quelle représentation ?
J. Falcou Système
![Page 29: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/29.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Comment ordonnancer ?
Propriétés d’un ordonnancement
ÉquitéEfficacitéRéactivité
Solutions modernesOrdonancement préemptifAllocation de quantum de temps
Mais pas universelles :(Quantum faible = meilleur réactivitéQuantum fort = meilleur efficacité
J. Falcou Système
![Page 30: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/30.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Comment ordonnancer ?
Propriétés d’un ordonnancement
ÉquitéEfficacitéRéactivité
Solutions modernesOrdonancement préemptifAllocation de quantum de temps
Mais pas universelles :(Quantum faible = meilleur réactivitéQuantum fort = meilleur efficacité
J. Falcou Système
![Page 31: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/31.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Comment ordonnancer ?
Propriétés d’un ordonnancement
ÉquitéEfficacitéRéactivité
Solutions modernesOrdonancement préemptifAllocation de quantum de temps
Mais pas universelles :(Quantum faible = meilleur réactivitéQuantum fort = meilleur efficacité
J. Falcou Système
![Page 32: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/32.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Quelques Ordonnancements
FIFO (ou round-robinPremier arrivé, Premier serviTemps de réponse ∝ nombre de processus actifsCertains processus doivent être activés avant les autres
Priority QueuesOrdonnancement en fonction de la priorité des processusProcessus interactif = Priorité hauteRisque de famine pour les processus à faible priorité
J. Falcou Système
![Page 33: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/33.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Quelques Ordonnancements
FIFO (ou round-robinPremier arrivé, Premier serviTemps de réponse ∝ nombre de processus actifsCertains processus doivent être activés avant les autres
Priority QueuesOrdonnancement en fonction de la priorité des processusProcessus interactif = Priorité hauteRisque de famine pour les processus à faible priorité
J. Falcou Système
![Page 34: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/34.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Exemples
Données du problèmeCinq processus A,B,C,D,E exécutés dans cet ordreAucun appel à des I/ODurées des processus :
Proc. A B C D EDurée 10s 6s 2s 4s 8sPrio 3 5 2 1 4
Stratégies
Ordonnancement préemptif à quantum de 2sPrioritéRound-Robin
J. Falcou Système
![Page 35: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/35.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Exemples
Données du problèmeCinq processus A,B,C,D,E exécutés dans cet ordreAucun appel à des I/ODurées des processus :
Proc. A B C D EDurée 10s 6s 2s 4s 8sPrio 3 5 2 1 4
Stratégies
Ordonnancement préemptif à quantum de 2sPrioritéRound-Robin
J. Falcou Système
![Page 36: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/36.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Exemples
A (3, 10s)
B (5, 6s)
C (2, 2s)
D (1, 4s)
E (4, 8s)0 5 10 15 20 25 30
J. Falcou Système
![Page 37: Processsus, Thread et Ordonnancement - Laboratoire …falcou/teaching/processus.pdf · Les Processus Les Threads Ordonnancement Définitions Gestion des processus Mise en œuvre](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9d09c009d3f29a298bb5ca/html5/thumbnails/37.jpg)
Les ProcessusLes Threads
OrdonnancementPolitiques
Exemples
A (10s)
B (6s)
C (2s)
D (4s)
E (8s)0 5 10 15 20 25 30
J. Falcou Système