informatique de base introduction aux systèmes d'exploitation
DESCRIPTION
Informatique de Base Introduction aux Systèmes d'Exploitation. Pierre Manneback Service d ’Informatique Faculté Polytechnique de Mons [email protected] http://elearning.fpms.ac.be (info). Gestion des Processus. 2.1. Les processus 2.2. L'ordonnancement des processus. Chapitre 2. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/1.jpg)
OS 2003-04, FPMs, Ch. 21
Informatique de BaseIntroduction aux Systèmes
d'Exploitation
Pierre Manneback
Service d ’Informatique
Faculté Polytechnique de [email protected]
http://elearning.fpms.ac.be
(info)
![Page 2: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/2.jpg)
OS 2003-04, FPMs, Ch. 22
Gestion des Processus
Chapitre 2
2.1. Les processus2.2. L'ordonnancement des processus
![Page 3: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/3.jpg)
OS 2003-04, FPMs, Ch. 23
2.1. Les processus
• Un processus est un programme en exécution
• Un processus est caractérisé par un contexte d ’exécution
– segments de texte, données et pile– compteur spécifiant l’instruction suivante à exécuter– registres
![Page 4: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/4.jpg)
OS 2003-04, FPMs, Ch. 24
Les segments d'un processus: le texte, les données, la pile
.
![Page 5: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/5.jpg)
OS 2003-04, FPMs, Ch. 25
Etats d'un processus
.
ordonnanceur
![Page 6: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/6.jpg)
OS 2003-04, FPMs, Ch. 26
L'importance de l'ordonnanceur
• Une des bases d'un OS multiprogrammé est– le traitement des interruptions– l'ordonnancement
![Page 7: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/7.jpg)
OS 2003-04, FPMs, Ch. 27
Opérations sur les processus
• Création de nouveaux processus
• Terminaison de processus
• Suspension– Interne (wait)
– Externe (attente d’une ressource)
P1
P4
P5
P6
P2
P3 P7
Arbre de processus
![Page 8: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/8.jpg)
OS 2003-04, FPMs, Ch. 28
Création de processus
• Un processus (père) peut créer des processus fils– stockage en une structure d'arbre de processus,– chaque processus connaît son père
• Partage de ressources (mémoire, fichiers) entre père et fils– total ou partiel
• Exécution– soit concurrente– soit le père attend la terminaison du fils
![Page 9: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/9.jpg)
OS 2003-04, FPMs, Ch. 29
Création de Processus
• Espace d'adressage– soit le fils duplique celui du père– soit le fils charge un nouveau programme
• exemples UNIX – l'appel système fork crée un processus fils– l'appel système execve utilisé après fork charge
un nouveau programme dans l'espace d'adressage du processus fils
![Page 10: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/10.jpg)
OS 2003-04, FPMs, Ch. 210
L’exemple de UNIX Identification des processus
• Les processus sont gérés de manière hiérarchique (arbre de processus)
• Chaque processus a donc un processus père, l’ayant créé. Sauf le processus initial, de numéro (pid) 0, qui est le swap.
Init
make xmail
xtermsyslog inetd
tcsh
MonProgramme
![Page 11: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/11.jpg)
OS 2003-04, FPMs, Ch. 211
Identification des processus
• pid : entier positif unique identifiant le processus
• ppid : pid du processus père• uid, euid : identifieur de l’utilisateur
réel (celui qui a lancé le proc) ou effectif (au moment de l’instruction)
• gid, egid :identifieur du groupe de l’utilisateur réel (ou effectif)
![Page 12: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/12.jpg)
OS 2003-04, FPMs, Ch. 212
Création de processuspid_t fork(void);
• Un processus (père) peut en créer un autre (processus fils) par l ’appel système fork().
• L ’appel fork() duplique le contexte du processus père. Il retourne la valeur 0 au fils, et le pid du fils au père.
père
fils
fork()
0
pid fils
![Page 13: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/13.jpg)
OS 2003-04, FPMs, Ch. 213
Toute création de processus se fera donc en unix par un code du type:
#include <unistd.h>…if ( pid_child = fork() ) {
/* I am the father*/…}else {
/* I am the child*/…}
Création de processus
![Page 14: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/14.jpg)
OS 2003-04, FPMs, Ch. 214
Création de processus
• Le branchement en fonction du retour de fork() permet de donner au fils un code distinct du père.
• Seules limitations: – nombre maximal de processus en cours dans le
système, ou pour l’utilisateur (code erreur , retour de fork() = -1)
– plus assez de mémoire (code erreur, retour de fork() = -1)
![Page 15: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/15.jpg)
OS 2003-04, FPMs, Ch. 215
La terminaison de processus
• Exécution de la dernière instruction ou appel système exit() .– L'O.S. libère les ressources employées– Le père en attente peut se réactiver
• Un parent peut arrêter son exécution (abort()) ou un processus peut "tuer" un autre s'il en a le droit (kill())
• Les processus orphelins (père mort) sont généralement associés au processus racine.
![Page 16: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/16.jpg)
OS 2003-04, FPMs, Ch. 216
La terminaison de processus
4 possibilités:
1. Sortie normale (appel exit() ou fin de code)
2. Sortie en cas d'erreur (volontaire, appel abort())
3. Erreur fatale (involontaire, kill() par l'O.S.)
4. Processus tué par un autre (involontaire, appel- système kill())
![Page 17: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/17.jpg)
OS 2003-04, FPMs, Ch. 217
Implémentation des processus
PCB = Process Control Block
Bloc d'informations caractérisant complètement un processus– Etat
– Compteur d'instruction
– état des registres
– paramètres de priorité et d'ordonnancement
– paramètres de gestion de la mémoire
– informations comptables
– informations I/O (fichiers ouverts…)
![Page 18: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/18.jpg)
OS 2003-04, FPMs, Ch. 218
Process Control Block (PCB)
![Page 19: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/19.jpg)
OS 2003-04, FPMs, Ch. 219
Les PCB permettent d'interrompre et de relancer des processus
![Page 20: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/20.jpg)
OS 2003-04, FPMs, Ch. 220
Vision plus détaillée des PCB
les PCB sont regroupés dans une table de processus
![Page 21: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/21.jpg)
OS 2003-04, FPMs, Ch. 221
2.2. L'ordonnancement des processus
• Bursts of CPU usage alternate with periods of I/O wait– (a) a CPU-bound process– (b) an I/O-bound process
![Page 22: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/22.jpg)
OS 2003-04, FPMs, Ch. 222
Objectifs de l'ordonnancement
.
![Page 23: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/23.jpg)
OS 2003-04, FPMs, Ch. 223
Objectifs de l’ordonnancement
• Beau problème multicritère!• Il n ’y a pas qu’une politique
d’ordonnancement mais des politiques paramétrées
• Souvent, on choisit une politique, que l’on adapte (tuning) à la situation concrète
nombre et type de processus, priorités, contraintes,...
![Page 24: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/24.jpg)
OS 2003-04, FPMs, Ch. 224
Algorithmes d'ordonnancement
• Premier arrivé, premier servi (FCFS)
• Plus court d'abord (SJF)
• Avec priorité
• Carrousel (Round Robin)
• Avec files multiples
![Page 25: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/25.jpg)
OS 2003-04, FPMs, Ch. 225
L’ordonnancement le plus simple First Come First Served
• Simple• Souvent frustrant
(attente pour les jobs courts)
Job CPU use 1 24 2 3 3 3
temps d'attente moyen =17
2 31
t=0 24 30
![Page 26: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/26.jpg)
OS 2003-04, FPMs, Ch. 226
First Come First Served
• Grande variabilité suivant l’ordre d’arrivée
Job CPU use 1 3 2 3 3 24
• Temps d'attente moyen=3• Entraîne un effet de convoi:
grand nombre de jobs courts derrière un job long (analogie au camion dépassant sur autoroute)
21 3
t=0 6 30
![Page 27: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/27.jpg)
OS 2003-04, FPMs, Ch. 227
Ordonnancement Shortest-Job-First (SJF)
• Associe à chaque processus une estimation n+1 de
la durée de la prochaine utilisation CPU (CPU burst).
• Choisit le processus avec le plus petit n+1
• Difficulté: l'estimation n+1
• SJF est optimal : il donne le temps moyen d'attente minimal pour un ensemble de processus donnés (où l'on connaît les temps successifs d'exécution!)
![Page 28: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/28.jpg)
OS 2003-04, FPMs, Ch. 228
SJF non préemptif ou préemptif
• 2 schémas possibles– nonpréemptif – préemptif: réquisitionner le CPU si un
processus nouveau a une estimation n+1 plus petite que le temps estimé restant du processus en cours. Ce schéma est connu sous le nom deShortest-Remaining-Time-First (SRTF).
![Page 29: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/29.jpg)
OS 2003-04, FPMs, Ch. 229
Exemple de SJF non préemptif
P1 P3 P2
73 160
P4
8 12
Process Arrival Time Burst Time(estimated)
P1 0.0 7
P2 2.0 4
P3 4.0 1
P4 5.0 4
temps moyen d'attente = (0 + (12-4-2) + (8-1-4)+ (16-4-5))/4 = 4
![Page 30: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/30.jpg)
OS 2003-04, FPMs, Ch. 230
Exemple de SRTF
Process Arrival Time Burst Time
P1 0.0 7
P2 2.0 4
P3 4.0 1
P4 5.0 4
Average waiting time = ((16-7)+ (7-4-2) + (5-4-1) +(11-4-5)/4 = 3
P1 P3P2
42 110
P4
5 7
P2 P1
16
![Page 31: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/31.jpg)
OS 2003-04, FPMs, Ch. 231
Estimer la durée du prochain CPU Burst
Sur base du passé : estimation du burst précédent + durée réelle burst précédent
:Define 4.
10 , 3.
burst CPU next the for value predicted 2.
burst CPU of lenght actual 1.
1n
thn nt
n+1 = tn + (1 - )n
souvent = 0.5
![Page 32: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/32.jpg)
OS 2003-04, FPMs, Ch. 232
SJFExemple de moyenne exponentielle
=0 n+1 = n
– Ne tient pas compte de l'historique =1 n+1 = tn
– Tient uniquement compte de la durée du burst précédent.• Par expansion de la formule
n+1 = tn+(1 - ) tn-1 + …+(1 - )j t n-j + …
• comme et (1 - ) sont compris entre 0 et 1, chaque terme a moins de poids que son prédécesseur (moyenne pondérée).
![Page 33: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/33.jpg)
OS 2003-04, FPMs, Ch. 233
SJFExemple de moyenne exponentielle (2)
CPU Burst: 6 4 6 4 13 13 13
Guess: 10 8 6 6 5 9 11 12
n+1 = tn + (1 - )n
= 0.5
![Page 34: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/34.jpg)
OS 2003-04, FPMs, Ch. 234
Ordonnancement par priorité
• Une priorité (nombre entier positif) est associée à chaque processus
• Le CPU est alloué au processus prêt avec la plus haute priorité (FIFO par priorité) (plus petit entier = plus haute priorité), de manière préemptive ou non.
• SJF est en fait un ordonnancement par priorité où la priorité est l'estimation du temps CPU du prochain cycle
• Problème Famine: un processus avec faible priorité peut attendre très longtemps
• Solution Priorité dynamique en fonction du temps d'attente. Au plus on attend, au plus la priorité augmente
![Page 35: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/35.jpg)
OS 2003-04, FPMs, Ch. 235
Ordonnancement "Carrousel" Round Robin (RR)
• Définition d'une durée maximale d'utilisation continue du CPU par processus (quantum), par ex. 10-100 millisecondes. Quand un processus en exécution atteint son quantum, il est interrompu.Choix FIFO des processus prêts (Carrousel)
• Si n processus prêts avec un quantum q, chaque processus utilisera 1/n du CPU au plus un temps q. Aucun processus n'attend donc plus de (n-1)q unités de temps
• si q grand => FIFO
• si q petit, beaucoup de pertes
![Page 36: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/36.jpg)
OS 2003-04, FPMs, Ch. 236
Exemple: RR avec Quantum = 20
Process Burst Time
P1 53
P2 17
P3 68
P4 24
• Typically, higher average turnaround than SJF, but better response.
P1 P2 P3 P4 P1 P3 P4 P1 P3 P3
0 20 37 57 77 97 117 121 134 154 162
![Page 37: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/37.jpg)
OS 2003-04, FPMs, Ch. 237
RR: problème du choix du quantum
![Page 38: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/38.jpg)
OS 2003-04, FPMs, Ch. 238
RR: le temps total moyen d'exécution varie avec le quantum
![Page 39: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/39.jpg)
OS 2003-04, FPMs, Ch. 239
RR: le temps total moyen d'exécution varie avec le quantum (2)
• q=6 t(P1) =6, t(P2) =9, t(P3) =10, t(P4) =17 => temps moyen = 10.5
• q=5 t(P1) =15, t(P2) =8, t(P3) =9, t(P4) =17 => temps moyen=12.25
• Compromis temps d'attente d'un tour/temps total d'exécution
• tenir compte de la durée des changements de contexte
• Idéalement, quantum proche des durées de cycle CPU (burst) moyen
![Page 40: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/40.jpg)
OS 2003-04, FPMs, Ch. 240
Ordonnancement avec files multiples
• Le pool des processus prêts est partitionné en différentes files suivant le type de processus ou ses priorités
• Chaque file peut avoir son propre algorithme d'ordonnancement
– file de processus utilisateurs interactifs – RR
– file de processus système – FCFS
– file de processus batch -Par priorité
• Un ordonnancement doit être effectué entre les files.
![Page 41: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/41.jpg)
OS 2003-04, FPMs, Ch. 241
Ordonnancement avec files multiples (2)
• Priorités de files: d'abord les processus systèmes, ensuite les processus interactifs, enfin les batchs. Si priorité fixe, danger de famine.
• Réserver des quotas d'utilisation CPU par files: maximum 20% pour la file système, 50% pour l'interactive, 30% pour la batch (éventuellement quota dynamique suivant le moment de la journée).
![Page 42: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/42.jpg)
OS 2003-04, FPMs, Ch. 242
Ordonnancement avec files multiples (3)
![Page 43: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/43.jpg)
OS 2003-04, FPMs, Ch. 243
Ordonnancement avec files multiples et feedback
• Possibilité de transition d'un processus d'une file à une autre en fonction de son temps d'attente
• De nombreux paramètres sont à considérer:
– nombre de files
– ordonnanceur pour chaque file
– algorithme de rehaussement de priorité
– algorithme d'abaissement de priorité
– algorithme de choix de file de départ
![Page 44: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/44.jpg)
OS 2003-04, FPMs, Ch. 244
Exemple d'ordonnancement avec files multiples et feedback
• 3 files: – Q0 – quantum 8 ms– Q1 – quantum 16 ms– Q2 – FCFS
• Ordonnancement – Un processus P entre dans la file Q0. Quand il est élu, il reçoit 8
ms. S'il ne termine pas en 8 ms, il passe à la file Q1 (abaissement de priorité).
– Soit la file Q0 devient vide, auquel cas P peut s'exécuter et recevoir un quantum de 16 ms. Après coup, il passe à la file Q2.
– Un algorithme de rehaussement de priorité doit être associé.
![Page 45: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/45.jpg)
OS 2003-04, FPMs, Ch. 245
Exemple d'ordonnancement avec files multiples et feedback (2)
![Page 46: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/46.jpg)
OS 2003-04, FPMs, Ch. 246
Ordonnancement Unix
• Niveaux de priorité définis par le système– suivant l’activité
– mode user
– mode noyau
0 - while swapping
10 - waiting for file ctrl
20 - waiting on disk i/o
25 - PZERO, baseline
30 - waiting on resources
35 - waiting on locks
40 - waiting for an event
50 - PUSER, base user
![Page 47: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/47.jpg)
OS 2003-04, FPMs, Ch. 247
Ordonnancement Unix
• Mode noyau– dépend de l’activité
• Mode user– pusrpri < 128– pnice diminue la priorité– pcpu reflète l’utilisation cpu
pusrpri = PUSER + pcpu/4 + 2*pnice
![Page 48: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/48.jpg)
OS 2003-04, FPMs, Ch. 248
Ordonnancement linux
• 3 types de processus pour l ’ordonnanceur
– SCHED_FIFO processus prioritaire non préemptible
– SCHED_RR processus prioritaire préemptible– SCHED_OTHER processus classique
![Page 49: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/49.jpg)
OS 2003-04, FPMs, Ch. 249
Ordonnancement linux
• La file des processus SCHED_FIFO « ready to run » est exécutée prioritairement
• Ces processus ne sont interruptibles que si:– un autre processus SCHED_FIFO avec plus
haute priorité est prêt– le processus abandonne le processeur (appel
sched_yield) ou est en attente d'un événement
![Page 50: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/50.jpg)
OS 2003-04, FPMs, Ch. 250
Ordonnancement linux
• Les processus SCHED_RR suivent le même schéma, mais ils travaillent avec un quantum de temps pour leur exécution
• Il y a possibilité de modifier la politique d’ordonnancement et les paramètres d’ordonnancement associés à un processus par des appels-système
![Page 51: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/51.jpg)
OS 2003-04, FPMs, Ch. 251
Ordonnancement temps-réel
Garantie d'exécution de certains processus en des temps déterminés. Cela nécessite de l'ordonnanceur:
• la préemption possible (réquisition du CPU)
• la gestion des priorités
![Page 52: Informatique de Base Introduction aux Systèmes d'Exploitation](https://reader033.vdocuments.us/reader033/viewer/2022061612/568145ae550346895db2aa4e/html5/thumbnails/52.jpg)
OS 2003-04, FPMs, Ch. 252