96

Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 [email protected] 2 [email protected]

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Systèmes d'Exploitation - ENSIN6U3

Ordonnan ement

Leonardo Brenner

1

Jean-Lu Massat

2

1

Leonardo.Brenner�univ-amu.fr

2

Jean-Lu .Massat�univ-amu.fr

Aix-Marseille Université

Fa ulté des S ien es

Page 2: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Table de matière

1

Généralités

Problématique

Ordonnan ement

Mesures de performan es

2

Algorithmes d'ordonnan ement

First In First Out

Shortest Job First

Shortest Remaining Time

Highest Response Ratio Next

Round Robin

Files de priorité

Files de priorité dynamique

Pro essus temps réel

Allo ation multi-pro essus

3

Ordonnan ement sur Unix, Linux et Windows

Unix

Linux

Windows

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 2 / 45

Page 3: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités

Table de matière

1

Généralités

Problématique

Ordonnan ement

Mesures de performan es

2

Algorithmes d'ordonnan ement

First In First Out

Shortest Job First

Shortest Remaining Time

Highest Response Ratio Next

Round Robin

Files de priorité

Files de priorité dynamique

Pro essus temps réel

Allo ation multi-pro essus

3

Ordonnan ement sur Unix, Linux et Windows

Unix

Linux

Windows

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 3 / 45

Page 4: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Problématique

Problématique

Exé ution de pro essus

Disque Mémoire CPU

InstructionsProcessusProgramme

Disque CPU

InstructionsProgrammes Processus

Mémoire

Monoprogrammation Multiprogrammation

Cas d'un système multiprogrammé

Plusieurs pro essus en mémoire, un seul à la fois a ède au CPU ;

Comment hoisir le pro essus qui a a ès au CPU ? Comment hanger et

a ès au ours de l'exé ution ?

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 4 / 45

Page 5: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Ordonnan ement

Ordonnan ement de pro essus

Dé�nition : Ordonnan eur

L'ordonnan eur est un algorithme qui va élire le pro essus qui a a ès à la CPU.

Ce pro essus a le � privilège �d'a éder à la CPU pendant un intervalle de temps.

Perte de la CPU

Il y a perte de la CPU dans trois as :

interruption extérieur,

déroutements,

appels système.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 5 / 45

Page 6: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Ordonnan ement

Obje tifs et ritères

Obje tifs d'un bon ordonnan ement

équitable,

débit maximum,

rationaliser la gestion des ressour es,

favoriser les � bons �pro essus,

améliorer les temps de réponse moyen.

Critères d'ordonnan ement

le taux d'E/S,

le taux d'utilisation de la CPU,

le type et la priorité du pro essus,

temps CPU umulé,

temps CPU restant,

taux de réquisition.

Système intera tif

On her he à optimiser le temps de réponse ourt pour répondre à l'utilisateur

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 6 / 45

Page 7: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Ordonnan ement

Commutation de ontexte

Dé�nition : Commutation de ontexte

Une ommutation de ontexte onsiste à sauvegarder l'état d'un pro essus et à

restaurer l'état d'un autre pro essus.

Ordonnan eur non préemptif

On séle tionne un pro essus qui s'exé ute jusqu'à e qu'il libère volontairement le

pro esseur.

Ordonnan eur préemptif (ave réquisition)

On séle tionne un pro essus qui s'exé ute pendant un intervalle de temps ;

Si le pro essus est toujours en ours d'exé ution après et intervalle de

temps, il est suspendu et un autre pro essus est hoisi

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 7 / 45

Page 8: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Ordonnan ement

Type d'allo ation

Quel type d'allo ation

long terme : variation du degré de multi-programmation par swap-ping,

moyen terme : détermine et lasse les pro essus prêts,

ourt terme : répartition de la CPU.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 8 / 45

Page 9: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Mesures de performan es

Mesures de performan es (1/2)

Dé�nition : Temps d'attente ou réponse (d'un pro essus)

Temps né essaire pour qu'un pro essus soit élu pour la première fois par

l'ordonnan eur depuis sa soumission.

Dé�nition : Temps d'exé ution (d'un pro essus)

Temps é oulé entre la soumission et la �n de l'exé ution du pro essus.

Illustration

Processus

Temps

Temps d’exécution

Temps d’attente

Temps de soumission

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 9 / 45

Page 10: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Généralités Mesures de performan es

Mesures de performan es (2/2)

Performan es d'un algorithme d'ordonnan ement

Temps moyen d'attente : moyenne de tous les temps d'attente de haque

pro essus ;

Temps moyen d'exé ution : moyenne de tous les temps d'exé ution de haque

pro essus

Quelques algorithmes simples

First In First Out (FIFO)

Shortest Job First (SJF)

Shortest Remaining Time (SRT)

Highest Response Ratio Next (HRN)

Round Robin (tourniquet) (RR)

Files de priorité

Files de priorité dynamique

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 10 / 45

Page 11: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement

Table de matière

1

Généralités

Problématique

Ordonnan ement

Mesures de performan es

2

Algorithmes d'ordonnan ement

First In First Out

Shortest Job First

Shortest Remaining Time

Highest Response Ratio Next

Round Robin

Files de priorité

Files de priorité dynamique

Pro essus temps réel

Allo ation multi-pro essus

3

Ordonnan ement sur Unix, Linux et Windows

Unix

Linux

Windows

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 11 / 45

Page 12: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out

Des ription de l'algorithme First In First Out

Les pro essus sont exé utés dans l'ordre de soumission.

Propriétés de l'algorithme

Pas de notion de priorité sur les pro essus ;

Non préemptif (pas de réquisition) ;

Pas de onnaissan e sur la durée des pro essus ;

Croissan e rapide du temps d'attente.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 12 / 45

Page 13: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

ProcessusProcessus

1

2

3

4

Temps

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 14: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 15: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 16: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 17: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 18: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement First In First Out

First In First Out : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

42

5

6Pro essus Temps Temps

d'attente d'exé ution

1 0 3

2 5 7

3 2 6

4 6 9

Moyenne 3.25 6.25

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 13 / 45

Page 19: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First (SJF)

Des ription de l'algorithme Shortest Job First

Les pro essus les plus ourts sont exé utés en premier.

Propriétés de l'algorithme

Pas de notion de priorité sur les pro essus ;

Non préemptif ;

Né essité de onnaître la durée des pro essus ;

Risque de privation.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 14 / 45

Page 20: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 21: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 22: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 23: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 24: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 25: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Shortest Job First : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Temps

ProcessusProcessus

1

2

3

4

1

2

7

Pro essus Temps Temps

d'attente d'exé ution

1 0 3

2 1 3

3 7 11

4 2 5

Moyenne 2.5 5.5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 15 / 45

Page 26: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Job First

Temps de réponse : FIFO versus SJF

FIFO

SJFTempsde

réponse

Temps de service demandé

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 16 / 45

Page 27: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time (SRT)

Des ription de l'algorithme Shortest Remaining Time

Les pro essus dont il reste le temps d'exé ution le plus ourt sont exé utés en

premier.

Propriétés de l'algorithme

Pas de notion de priorité sur les pro essus ;

Préemptif : par l'arrivée d'un nouveau pro essus ;

Né essité de onnaître la durée des pro essus ;

On favorise les travaux ourts ;

Coûts d'exploitation importants.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 17 / 45

Page 28: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 29: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 30: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 31: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 32: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 33: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 34: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Shortest Remaining Time

Shortest Remaining Time Next : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 4 0

2 3 2

3 2 1

4 2 3

Temps

ProcessusProcessus

1

2

3

4

6

Pro essus Temps Temps

d'attente d'exé ution

1 0 8

2 6 9

3 0 2

4 0 2

Moyenne 1.5 5.25

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 18 / 45

Page 35: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next (HRN)

Des ription de l'algorithme Highest Response Ratio Next

Le hoix du pro essus est basé sur le ratio :

p(t) =w(t) + ts

ts

ave

w(t) : temps d'attente,

ts : temps d'exé ution estimé.

Si w(t) = 0, les travaux les plus ourts (ts) sont privilégiés.

Propriétés de l'algorithme

Pas de notion de priorité sur les pro essus ;

Préemptif et non-préemptif ;

Né essité de onnaître la durée des pro essus ;

On favorise les travaux ourts ou qui attend à long temps ;

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 19 / 45

Page 36: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

2

3

4

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 37: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

2

3

4

4

4

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 38: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

2

2

2

3

4

4

5

4

4

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 39: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

2

2

2

3

2

3

4

4

5

4

5

4

4

3

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 40: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

3

4

4

5

4

5

4

6

4

4

3

3

4

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 41: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

4

3

3

4

3

5

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 42: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

4

3

3

4

3

5

3

6

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 43: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

4

3

3

4

3

5

3

6

3

6

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 44: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

4

3

3

4

3

5

3

6

3

6

3

7

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 45: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

10

4

4

3

3

4

3

5

3

6

3

6

3

7

3

7

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 46: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

10

4

10

4

4

3

3

4

3

5

3

6

3

6

3

7

3

7

3

8

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 47: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

10

4

10

4

11

4

4

3

3

4

3

5

3

6

3

6

3

7

3

7

3

8

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 48: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

10

4

10

4

11

4

4

3

3

4

3

5

3

6

3

6

3

7

3

7

3

8

3

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 49: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Highest Response Ratio Next

Highest Response Ratio Next : exemple

Données des pro essus

Pro essus Durée Temps de

soumission

1 3 0

2 2 2

3 4 1

4 3 3

Cal ul des priorités

Pro essus Temps

0 1 2 3 4 5 6 7 8 9 10 11

1

3

3

3

3

3

3

4

3

5

3

2

2

2

3

2

3

2

4

2

3

4

4

5

4

5

4

6

4

7

4

8

4

9

4

9

4

10

4

10

4

11

4

4

3

3

4

3

5

3

6

3

6

3

7

3

7

3

8

3

Temps

ProcessusProcessus

1

2

3

4

Pro essus Temps Temps

d'attente d'exé ution

1 0 5

2 1 4

3 1 11

4 3 8

Moyenne 1.25 7

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 20 / 45

Page 50: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin (Tourniquet)

Des ription de l'algorithme Round Robin

Les pro essus sont rangés dans une �le. Un intervalle de temps, appelé quantum,

est assigné à haque job. Si l'exé ution du pro essus n'est pas terminée à la �n du

quantum, il est repla é en �n de �le.

Propriétés de l'algorithme

Pas de notion de priorité sur les pro essus ;

Préemptif ;

Pas de onnaissan e sur la durée des pro essus.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 21 / 45

Page 51: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 52: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 53: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 54: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 55: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 56: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 57: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 58: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 59: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 60: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 61: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 62: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 63: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

4

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 64: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Round Robin : exemple

Données des pro essus

Pro essus Durée Temps de soumission

1 3 0

2 2 2

3 4 1

4 3 3

Quantum = 1

Temps

ProcessusProcessus

1

2

3

41

2

3Pro essus Temps Temps

d'attente d'exé ution

1 0 4

2 2 6

3 1 10

4 3 9

Moyenne 1.5 7.25

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 22 / 45

Page 65: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Round Robin

Temps de réponse : Quantum

Temps deréponse moyen

quantum

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 23 / 45

Page 66: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Des ription de l'algorithme Files de priorité

Il existe une �le par ordre de priorité. La gestion de haque �le est faite par

l'algorithme Round Robin. Les �les sont traitées dans l'ordre dé roissant.

Propriétés de l'algorithme

Notion de priorité sur les pro essus ;

Préemptif ;

Pas de onnaissan e sur la durée des pro essus.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 24 / 45

Page 67: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 68: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 69: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 70: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 71: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 72: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 73: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 74: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 75: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

2

3

4

5

1

Temps

ProcessusProcessus

1

2

3

41

2

3

4

5

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 76: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité

Files de priorité

Données des pro essus

Pro essus Durée Temps de soumission Priorité

1 3 0 3

2 2 2 5

3 4 1 3

4 3 3 1

Quantum = 1

Temps

ProcessusProcessus

1

2

3

43

6Pro essus Temps Temps

d'attente d'exé ution

1 0 6

2 0 2

3 3 8

4 6 9

Moyenne 2.25 6.25

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 25 / 45

Page 77: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité dynamique

Files de priorité dynamique

Des ription de l'algorithme Files de priorité dynamique

Il existe une �le par ordre de priorité plus une �le pour le nouveau pro essus. Tout

les nouveaux pro essus sont pla és sur e �le plus prioritaire. Après la première

exé ution, le pro essus est pla é dans une autre �le de priorité.

Propriétés de l'algorithme

Notion de priorité sur les pro essus ;

La priorité est al ulé dynamiquement ;

Di�érentes équations peuvent être utilisées ;

Préemptif ;

Pas de onnaissan e sur la durée des pro essus.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 26 / 45

Page 78: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité dynamique

Files de priorité dynamique

niveau n-1

niveau n

réquisition (préemption)

arrivée sortieCPU

niveau 2

niveau 1

niveau 0

.

.

.

.

.

.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 27 / 45

Page 79: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Files de priorité dynamique

Files de priorité - lasses de pro essus

Classes de pro essus

Il existe des lasses de pro essus qui sont rangés dans di�érent �les de priorité.

pro essus systèmes,

pro essus temps réel,

pro essus intera tifs,

pro essus d'édition intera tive,

pro essus � bat h �.

Chaque lasse est absolument prioritaire sur elles du niveau inférieur.

À l'intérieur de haque lasse, les pro essus sont rangés dans un système de �les

de priorité multi-niveaux.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 28 / 45

Page 80: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Pro essus temps réel

Pro essus temps réel

Le as des pro essus temps réel

Prise en ompte d'un événement :

attente

évènement Prise en compte

temps

si

n est le nombre de pro essus temps réel,

s le temps pris par l'ordonnan eur,

t le temps moyen pris par les pro essus T.R.

alors

(n − 1)× (s + t) < attente

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 29 / 45

Page 81: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Pro essus temps réel

Mélange temps réel et temps ma hine

Division du temps CPU

Le temps CPU peut être divisé en une partie �xe réservée au pro essus Temps

Réel, et une partie réservée aux autres pro essus.

T.R. T.R.Autres Autres

évènementattente

Les algorithmes pré édents s'appliquent dans la partie T.R.,

Les algorithmes lassiques sont utitilés par la partie � Autres �.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 30 / 45

Page 82: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Algorithmes d'ordonnan ement Allo ation multi-pro essus

Allo ation multi-pro essus

Hypothèse

On dispose de N pro esseurs identiques.

Obje tifs

équilibrage de la harge (homogénéité des taux d'utilisation de la CPU,

évitez les e�ets de � pompage �.

Systèmes simples X sophistiqués

Système simples : le S.E. s'exé ute toujours sur la même CPU,

Système plus sophistiqué : le S.E. est apable de s'exé uter en parallèle sur

plusieurs pro esseurs.

→ Il faut gérer les problèmes de syn hronisation.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 31 / 45

Page 83: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows

Table de matière

1

Généralités

Problématique

Ordonnan ement

Mesures de performan es

2

Algorithmes d'ordonnan ement

First In First Out

Shortest Job First

Shortest Remaining Time

Highest Response Ratio Next

Round Robin

Files de priorité

Files de priorité dynamique

Pro essus temps réel

Allo ation multi-pro essus

3

Ordonnan ement sur Unix, Linux et Windows

Unix

Linux

Windows

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 32 / 45

Page 84: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Unix

Généralités

Ordonnan ement sous Unix

Utilisation de �les à plusieurs niveaux, haque �le orrespondant à un

ensemble de priorités disjoint des autres

Les pro essus sont séparés en deux parties :

Les pro essus qui s'exé utent en mode noyau (i.e. pro essus qui font des

appels système)

Les pro essus utilisateurs (i.e. qui ne font pas d'appel système)

Les pro essus utilisateurs ont des priorités à valeurs positives

Les pro essus qui s'exé utent en mode noyau ont des priorités à valeurs

négatives

Les priorités négatives sont prioritaires par rapport aux valeurs positives

Uniquement les pro essus qui résident en mémoire et prêts à l'exé ution sont

pla és dans es �les

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 33 / 45

Page 85: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Unix

Représentation

Représentation de l'ordonnan eur Unix

Priorité utilisateur 1

Attente de terminaison d'un �ls

Priorité utilisateur 0

Priorité utilisateur 2

Attente d'a� hage à l'é ran

Attente de saisie au lavier

Attente du bu�er disque

Attente E/S disque

0

0

-1

-2

-3

-4

1

2

Priorité max.

Files

Priorité min.

M

o

d

e

u

t

i

l

i

s

a

t

e

u

r

M

o

d

e

n

o

y

a

u

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 34 / 45

Page 86: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Unix

Algorithme

Des ription

L'ordonnan eur par ourt les �les en partant de la priorité la plus haute

(valeur la plus basse) ;

Dès qu'une �le non vide est trouvée : le premier pro essus de la �le est

démarré ;

Le pro essus s'exé ute pendant un quantum de temps (typiquement 100 ms)

sauf s'il se bloque avant ;

Une fois le quantum terminé, le pro essus est pla é en �n de �le ;

Les pro essus de même lasse partagent don le CPU suivant l'algorithme

Round Robin.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 35 / 45

Page 87: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Unix

Mise à jour des priorités

Des ription

Chaque se onde, la priorité de haque pro essus est re al ulée suivant la

formule :

priorité = usage CPU + ni e + base

usage CPU : utilisation moyenne du CPU depuis les dernières se ondes

ni e : valeur sympa, par défaut à 0 mais pouvant varier de -20 à 19 :

→֒ Pro essus utilisateur entre 0 et 19

→֒ Valeurs négatives uniquement pour les pro essus root

base : priorité de base

Les pro essus sont alors repla és dans les bonnes �les de priorité

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 36 / 45

Page 88: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Linux

Généralités (1/2)

Ordonnan ement sous Linux

L'ordonnan ement est di�érent des systèmes Unix et est basé sur les threads

(et non les pro essus) ;

Trois lasses de threads sont dé�nies pour l'ordonnan ement :

FIFO temps réel ;

Round Robin temps réel ;

Threads en temps partagé.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 37 / 45

Page 89: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Linux

Généralités (2/2)

Threads FIFO temps réel

Non préemtibles ;

Prioritaires par rapport aux autres (priorités entre -100 et -1).

Threads Round Robin temps réel

Idem que la première atégorie ex epté que les threads sont interruptibles par

l'horloge

S'il y a plusieurs pro essus éligibles, ils s'exé utent selon l'algorithme Round

Robin

Thread en temps partagé

Destinés aux pro essus non prioritaires.

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 38 / 45

Page 90: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Linux

Priorité et quantum

Priorité

Priorité d'ordonnan ement entre 0 et 39 ;

Peut être modi�ée par l'appel système ni e(val)

Plus la priorité est grande, plus le pro essus est rapide à répondre et reçoit

une proportion de CPU plus importante

Quantum

A haque thread est asso ié un quantum de temps (nombre de tops

d'horloge)

L'ordonnan eur al ule une valeur de bonté d'un thread :

Si ( lasse = temps réel) alors bonté ← 1000 + priorité ;

Si ( lasse = temps partagé et quantum > 0) alors bonté ← quantum +

priorité ;

Si ( lasse = temps partagé et quantum = 0) alors bonté ← 0

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 39 / 45

Page 91: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Linux

L'ordonnan ement

Séle tion d'un pro essus

Le thread possédant la plus forte valeur bonté est séle tionné ;

Pendant son exé ution, son quantum est dé rémenté de 1 ;

Un thread est alors retiré du CPU si :

Son quantum est à 0 ;

Il est bloqué par un appel d'entrée/sortie, un sémaphore ou autre ;

Un thread de bonté supérieure jusque-là bloqué devient éligible.

Mise à jour des quanta

Au fur et à mesure de l'exé ution des threads, leur quantum va don

diminuer jusqu'à 0 ;

Les threads bloqués, quand à eux, auront un quantum di�érent de 0 ;

Une fois qu'au un thread n'est plus éligible, on fait le mise à jour des quanta

de tous les pro essus :

quantum = (quantum / 2) + priorité

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 40 / 45

Page 92: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Linux

Conséquen es de l'algorithme

Des ription

Un thread utilisant beau oup le CPU :

Son quantum diminue rapidement ;

La nouvelle valeur sera égale à la priorité

Un thread e�e tuant beau oup d'entrées/sorties :

Son quantum ne sera pas égal à 0

La valeur de son quantum va augmenter (jusqu'à sa priorité ×2)

Si plusieurs threads utilisant de la CPU sont en on urren e :

Leur quantum diminue vers priorité

Les pro essus les plus prioritaires obtiennent une portion plus importante du

CPU

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 41 / 45

Page 93: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Windows

Prin ipe général

Des ription

Pas de thread entral pour l'ordonnan ement ;

Lorsqu'un thread ne peut plus s'exé uter . . .

Bloqué par une sémaphore, un mutex, une entrée/sortie ;

Signale un objet (libération d'une sémaphore) ;

Le quantum de temps est expiré.

. . . il entre en mode noyau et lan e lui-même l'ordonnan eur :

Il sauvegarde son propre ontexte ;

Lan e l'ordonnan eur pour trouver le su esseur (et le harger).

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 42 / 45

Page 94: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Windows

Niveaux de priorité

Priorité

La priorité du thread au sein de son pro essus :

time riti al (temps ritique), highest (le plus haut), above normal (au-dessus

de la normale), normal, below normal (en-dessous de la normale), lowest (le

plus bas), idle (ina tif)

La priorité des pro essus :

realtime (temps réel), high (haut), above normal, normal, below normal, idle

Répartition des priorités sur 32 niveaux

realtime high above normal normal below normal idle

time riti al 31 15 15 15 15 15

highest 26 15 12 10 8 6

above normal 25 14 11 9 7 5

normal 24 13 10 8 6 4

below normal 23 12 9 7 5 3

lowest 22 11 8 6 4 2

idle 16 1 1 1 1 1

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 43 / 45

Page 95: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Windows

Gestion des priorités

Des ription

Utilisation d'un tableau à 32 entrées (1 par priorité)

Chaque entrée pointe vers une liste de threads en attente ave ette priorités

L'algorithme re her he la première entrée non vide

Le thread en tête est exé uté pour un quantum de temps

A la �n du quantum, le thread est pla é en �n de �le

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 44 / 45

Page 96: Systèmes d'Exploitation - ENSIN6U3 - Ordonnancement · 2015. 9. 14. · Ordonnancement rdo Leona Brenner 1 Jean-Luc Massat 2 1 Leonardo.Brenner@univ-amu.fr 2 Jean-Luc.Massat@univ-amu.fr

Ordonnan ement sur Unix, Linux et Windows Windows

Évolution des priorités

Des ription

4 niveaux réels de priorités : temps réel (abus de langage !), utilisateur, zéro

et idle.

Les priorités temps réel sont réservées pour le système ou aux threads

autorisés par l'administrateur

Le thread zéro s'exé ute en tâ he de fond et utilise le temps CPU restant

pour le gestionnaire de mémoire

La priorité d'un thread utilisateur peut augmenter :

A la �n d'une opération d'entrée/sortie (augmentation suivant le périphérique)

En attente d'une sémaphore qui s'est libérée (priorité augmentée de 2)

Cette augmentation est temporaire : elle prend e�et immédiatement mais si

un thread a épuisé son quantum de temps, l'augmentation est réduite de 1

point (et ainsi de suite jusqu'au niveau de priorité du thread)

Leonardo Brenner , Jean-Lu Massat (AMU) Systèmes d'Exploitation 45 / 45