Cours 7. 1 Structure des systèmes d exploitation 2 Gestion des processus 3 Les threads 4 Synchronisation des processus 5 Les interblocages



Documents pareils
DAns un système multi-utilisateurs à temps partagé, plusieurs processus

Un ordonnanceur stupide

Partie 7 : Gestion de la mémoire

Systèmes d exploitation Gestion de processus

Annexe 6. Notions d ordonnancement.

Ordonnancement temps réel

Resolution limit in community detection

Cours de Systèmes d Exploitation

Equilibrage de charge (Load

Programmation linéaire

Un propagateur basé sur les positions pour le problème d Open-Shop.

Optimisation multi-critère pour l allocation de ressources sur Clouds distribués avec prise en compte de l énergie

Exclusion Mutuelle. Arnaud Labourel Courriel : arnaud.labourel@lif.univ-mrs.fr. Université de Provence. 9 février 2011

Processus! programme. DIMA, Systèmes Centralisés (Ph. Mauran) " Processus = suite d'actions = suite d'états obtenus = trace

Les transactions 1/46. I même en cas de panne logicielle ou matérielle. I Concept de transaction. I Gestion de la concurrence : les solutions

Argument-fetching dataflow machine de G.R. Gao et J.B. Dennis (McGill, 1988) = machine dataflow sans flux de données

Surveillance et maintenance prédictive : évaluation de la latence de fautes. Zineb SIMEU-ABAZI Univ. Joseph Fourier, LAG)

Détection d'intrusions en environnement haute performance

Cours A7 : Temps Réel

Forthcoming Database

Plus courts chemins, programmation dynamique

Info0804. Cours 6. Optimisation combinatoire : Applications et compléments

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Introduction aux systèmes temps réel. Iulian Ober IRIT

Programmation temps-réel Cours 1 et 2 Introduction et ordonnancement

On appelle variable condition une var qui peut être testée et

Initiation au HPC - Généralités

Chapitre 2 Le problème de l unicité des solutions

Problèmes liés à la concurrence

École Polytechnique de Montréal. Département de Génie Informatique et Génie Logiciel. Cours INF2610. Contrôle périodique.

TABLE DES MATIERES A OBJET PROCEDURE DE CONNEXION

Software and Hardware Datasheet / Fiche technique du logiciel et du matériel

PROBLEMES D'ORDONNANCEMENT AVEC RESSOURCES

Représentation des Nombres

Systèmes et Réseaux (ASR 2) - Notes de cours Cours 14

1-Introduction 2. 2-Installation de JBPM 3. 2-JBPM en action.7

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Evaluation des performances de programmes parallèles haut niveau à base de squelettes

I. Programmation I. 1 Ecrire un programme en Scilab traduisant l organigramme montré ci-après (on pourra utiliser les annexes):

RULE 5 - SERVICE OF DOCUMENTS RÈGLE 5 SIGNIFICATION DE DOCUMENTS. Rule 5 / Règle 5

Contrainte de flot pour RCPSP avec temps de transfert

Introduction à la Programmation Parallèle: MPI

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing

XtremWeb-HEP Interconnecting jobs over DG. Virtualization over DG. Oleg Lodygensky Laboratoire de l Accélérateur Linéaire

Gestion de mémoire secondaire F. Boyer, Laboratoire Sardes

Ré-ordonnancement adaptatif de messages dans un réseau ad hoc de véhicules

INSERTION TECHNIQUES FOR JOB SHOP SCHEDULING

Ordonnancement sous contraintes de Qualité de Service dans les Clouds

M2-Images. Rendu Temps Réel - OpenGL 4 et compute shaders. J.C. Iehl. December 18, 2013

Chrome for Work. CRESTEL - 4 décembre 2014

CH.3 SYSTÈMES D'EXPLOITATION

Surveillance de Scripts LUA et de réception d EVENT. avec LoriotPro Extended & Broadcast Edition

SAP SNC (Supply Network Collaboration) Web Package. (Français / English) language. Edition 2013 Mars

Instructions Mozilla Thunderbird Page 1

<Insert Picture Here> Solaris pour la base de donnés Oracle

Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN

Métriques de performance pour les algorithmes et programmes parallèles

Lean approach on production lines Oct 9, 2014

Table des matières. 1. Installation de VMware ESXI Pré-requis Installation... 3

DISTRICT 5 (COCHRANE-TEMISKAMING) RTO/ERO MINUTES / PROCÈS-VERBAL

Mécanismes de protection dans AUTOSAR OS

PRINCIPLES OF OPERATING SYSTEMS L. BENTABET, Bishop s University, Winter 2007 Notes par Philippe Giabbanelli

Introduction aux Systèmes et aux Réseaux

1 - Introduction : Déroulement du déploiement avec WDS / MDT :

I>~I.J 4j1.bJ1UlJ ~..;W:i 1U

Communications collectives et ordonnancement en régime permanent pour plates-formes hétérogènes

Gestion des processus

Introduction à la programmation concurrente

Vers l'orchestration de grilles de PC par les mécanismes de publicationsouscription

Projet Active Object

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Cours de Génie Logiciel

Windows Server Chapitre 1: Découvrir Windows Server 2008

Ordonnancement temps réel

LES TYPES DE DONNÉES DU LANGAGE PASCAL

Limitations of the Playstation 3 for High Performance Cluster Computing

Cours de Master Recherche

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

SERVEUR DÉDIÉ DOCUMENTATION

Flexible Identity. authentification multi-facteurs. authentification sans token. Version 1.0. Copyright Orange Business Services mai 2014.

Exécutif temps réel Pierre-Yves Duval (cppm)

Cours 2: Exclusion Mutuelle entre processus (lourds, ou légers -- threads)

14. Introduction aux files d attente

IBM Tivoli Monitoring, version 6.1

Chapitre 4 : Exclusion mutuelle

J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation

Master IMEA 1 Calcul Stochastique et Finance Feuille de T.D. n o 1

Runtime. Gestion de la réactivité des communications réseau. François Trahay Runtime, LaBRI sous la direction d'alexandre Denis Université Bordeaux I

DEMANDE D INFORMATION RFI (Request for information)

INFO-F-425 Modèles mathématiques et algorithmes pour l ordonnancement. Bernard Fortz

Comprendre l impact de l utilisation des réseaux sociaux en entreprise SYNTHESE DES RESULTATS : EUROPE ET FRANCE

Introduction à la théorie des files d'attente. Claude Chaudet

Intelligence Artificielle Planification

Differential Synchronization

Introduction : les processus. Introduction : les threads. Plan

Informatique industrielle A Systèmes temps-réel J.F.Peyre. Partie I : Introduction

L art d ordonnancer. avec JobScheduler. François BAYART

Thank you for choosing the Mobile Broadband USB Stick. With your USB Stick, you can access a wireless network at high speed.

Transcription:

Systèmes et Réseaux (ASR ) - Notes de cours Cours Anne Benoit March, 5 Structure des systèmes d exploitation Gestion des processus Les threads Synchronisation des processus 5 Les interblocages 5. Le problème des interblocages 5. Méthodes pour gérer les interblocages 5.. Prévenir des interblocages 5.. Eviter les interblocages Exemple avec n = 5 processus, m = types de ressources, A ( instances), B (5 instances), et C ( instances). Allocation Max P 5 On a l état suivant: P P 9 P P 5 Initialement, Available =(). Need P P P 6 P P 5. L état est-il sûr? Oui, on peut terminer immédiatement P et P, ce qui donne Available =(), puis tous les autres processus. Par la suite, si une requête peut être satisfaite, on considèrera qu elle l a été dans les questions qui suivent, sinon la requête est suspendue.. P e ectue la requête ( ). Peut-elle être satisfaite immédiatement? Déjà, on a bien ( ) apple Available =( ). Sionsatisfait larequête, Available = ( ) et le besoin de P devient ( ). On peut alors terminer P et on obtient Available =(5),puisP et on obtient Available =(). Onestalorsdans le même état que dans la question précédente, on peut terminer tous les autres processus. L état étant sûr, on peut satisfaire la requête.. P 5 e ectue la requête ( ). Peut-elle être satisfaite immédiatement? Non, car on n a plus assez de ressources disponibles (Available =( ) étant donné qu on a satisfait la requête précédente). 5. P e ectue la requête ( ). Peut-elle être satisfaite immédiatement? Non, car on se trouve alors dans un état non sûr: si on satisfait la requête, Available = ( ) et le besoin de P devient ( ). On ne peut alors terminer aucun processus car Need i apple Available pour apple i apple 5. 5.. Détecter les interblocages Idée: permettre de rentrer dans une situation d interblocage: algorithme pour détecter un interblocage et méthode pour récupérer. Avec une seule instance par type de ressources. Variante du graphe d allocation des ressources: graphe d attente. Les noeuds sont les processus, et on a un arc P i! P j Resource-allocation graph and wait-for graph si P i attend que P j relâche une ressource (P i! R q et R q! P j ). Exemple de graphe d allocation des ressources (a) et de graphe d attente (b):. Donner la matrice Need. (a) Resource-allocation On invoque graph périodiquement (b) Corresponding wait-for graph un algorithme qui cherche un circuit dans le graphe. S il yauncircuit,ilyauninterblocage. Operating System Concepts - th Edition, Feb, 5 6.6 Silberschatz, Galvin and Gagne 5

Avec plusieurs instances. Algorithme similaire à celui du banquier, avec le vecteur Available et la matrice Allocation. En plus, matrice n mrequest, quiindiquela requête courante de chaque processus. Algorithme de détection: utilise les vecteurs Work et F inish, initialisés à Work = Available, et pour apple i apple n, si Allocation i 6=, alors F inish[i] = false, sinon F inish[i] =true. Tant qu il existe un processus i tel que F inish[i] =false et Request i apple Work, {Work := Work+ Allocation i ; F inish[i] :=true; } S il existe P i ( apple i apple n) telquef inish[i] =false, alors il y a un interblocage. Chaque processus tel que F inish[i] = false est en interblocage. Exemple avec n =5processus,m =typesderessources,a ( instances), B ( instances), et C (6 instances). Allocation Request P On a l état suivant: P P P P 5 Initialement, Available =().. Est-ce qu il y a un interblocage?. Et si P demande une instance supplémentaire de la ressource C? Usage de l algorithme de détection. Quand, et à quelle fréquence invoquer l algorithme de détection? Dépend de la fréquence à laquelle on attend des interblocages, et du nombre de processus qui vont devoir reprendre leur exécution à un point antérieur (un processus par circuit disjoint dans le graphe). 5.. Récupérer d un interblocage Solutions: terminer tous les processus en interblocage, ou un processus à la fois jusqu à ce que l interblocage soit éliminé. Dans quel ordre terminer les processus? priorité du processus; temps passé à calculer et temps restant jusqu à complétion; ressources utilisées par le processus et besoin en ressources jusqu à complétion; nombre de processus qu on va devoir terminer; 5. Conclusion Interblocage: deux processus (ou plus) attendent indéfiniment un événement qui peut être produit uniquement par un bloqué. Approches: Prévenir ou éviter les interblocages: il n y en a jamais; Permettre de détecter les interblocages et de s en sortir; Ignorer le problème. conditionsnécessaires: exclusionmutuelle,tient-et-attend,pasdepréemption, attente circulaire. Prévenir: empêcher une de ces conditions; Eviter: information à priori sur l utilisation des ressources; Détecter: déterminer s il y a interblocage; Récupérer: terminer des processus ou préempter des ressources. Aucune approche n est su sante par elle-même. Petit problème d application de l algorithme du banquier. On considère le système suivant, avec 5 processus et ressources, avec plusieurs instances de chaque ressource ( ): Allocation Max P P 5 P 5 56 P 6 65 P 5 656. Donner la matrice Need et le vecteur Available.. L état est-il sûr? Par la suite, si une requête peut être satisfaite, on considèrera qu elle l a été dans les questions qui suivent, sinon la requête est suspendue.. P e ectue la requête ( ). Peut-elle être satisfaite immédiatement?. P e ectue la requête ( ). Peut-elle être satisfaite immédiatement? 5. P e ectue la requête ( ). Peut-elle être satisfaite immédiatement? processus interactif ou batch. On veut choisir une victime afin de minimiser le coût. Rollback: on retourne à un é t a t s û r, e t o n r e d é m a r r e l e p r o c e s s u s à p a r t i r d e c e t é t a t. P r o b l è m e d e f a m i n e : l e m ê m e processus peut être toujours choisi comme victime, rajouter le nombre de terminaisons dans le facteur coût.

6 Ordonnancement des processus Concepts de base, critères et algorithmes d ordonnancement, ordonnancement multiprocesseur ou temps réel, exemples d OS, évaluation des algorithmes. 6. Concepts de base Multiprogrammation Histogram of pour CPU-burst bien exploiter Times le CPU: l execution d un processus consiste en des cycles d utilisation CPU et d attente sur I/O. On parle de CPU burst. 6. Critères et algorithmes d ordonnancement 6.. Critères Utilisation CPU Maintenir le CPU le plus utilisé possible. Débit (throughput) C est le nombre de processus qui terminent leur exécution par unité de temps ( par heure, ou par seconde?). Temps de retournement (turnaround time)tempsnécessairepourexécuterunprocessus (depuis la soumission jusqu à la terminaison). Temps d attente (waiting time) Tempsqu unprocessuspassedanslafileready. Temps de réponse (response time) Tempsentrelasoumissiond unerequêteetla première réponse (et non la sortie finale). On cherche à maximiser l utilisation du CPU et le débit, et à minimiser les temps de retournement, attente et réponse. On peut chercher à optimiser la moyenne ou bien le minimum/maximum. Loi exponentielle / hyper-exponentielle: beaucoup de bursts courts, et très peu de Exponential / hyper exponential bursts longs. large # of short CPU bursts Ordonnanceur: small # of long choisit CPU bursts un processus parmi ceux en mémoire qui sont prêts à être exécutés, et lui donne le CPU. Décisions à prendre lorsqu un processus:. Silberschatz, Galvin and Gagne 5. passe de l état running à l état waiting;. passe de l état running à l état ready;. passe de l état waiting à l état ready;. se termine. Ordonnancement coopératif, non-préemptif s il n y a que et. Sinon, ordonnancement préemptif. Dispatcher: module qui donne le CPU au processus choisi par l ordonnanceur courtterme, ce qui implique de changer de contexte, passer en mode utilisateur, et aller au bon endroit dans le programme utilisateur pour redémarrer ce programme. Doit être très rapide: invoqué à chaque changement de processus. Latence: temps mis pour arrêter un processus et en charger un nouveau. 6.. Ordonnancement First-Come, First-Served (FCFS) First-Come, First-Served (FCFS) Scheduling Process Burst Time P Processus Temps de burst P P P Ordre d arrivée des processus: P,P,P. L exécution est: Suppose that the processes arrive in the order:,, The Gantt Chart for the schedule is: P P P Temps d attente: Waiting time for P = ; P = ; P = Average waiting time: ( + + )/ =. Silberschatz, Galvin and Gagne 5 P P P ce qui fait un temps d attente moyen de ++ =.,, The Gantt Sichart l ordre for the schedule d arrivée is: est P,P,P, on obtient FCFS Scheduling (Cont.) Suppose that the processes arrive in the order Waiting time for P = 6; P = ; P = Average waiting time: (6 + + )/ = P P Much better than previous case Example of n I/O bound and one CPU bound Convoy effect : short processes behind long process P 6 Temps d attente:. Silberschatz, Galvin and Gagne 5 P 6 P P ce qui fait un temps d attente moyen de 6++ =,bienmieuxquel exécutionprécédente! Exemple avec n processus gourmands en I/O, et un gourmand en CPU: si le gourmand en CPU s exécute en premier, les autres doivent attendre longtemps avant de pouvoir s exécuter. On parle de l e et de convoi (convoy e ect). 5 6

Prediction of the Length of the Next CPU Burst 6.. Ordonnancement Shortest-Job-First (SJF) A chaque processus, on associe la longueur de son prochain burst CPU, et on choisit le processus avec le temps le plus court. Deux versions:. Non pre emptif. Une fois le CPU donne a un processus, on ne peut pas le Example ofaitnon-preemptive SJF pre empter avant qu il termine son CPU burst. Exemple: Processus Temps d arrive e Temps de burst ProcessArrival Time Burst Time... P 5 P 5. SJF (non-preemptive) 8 +6++ Temps d attente moyen: ProcessArrival Time Burst Time Average Pre emptif.. waiting time. Si = Si n+ = tn + ( Operating System Concepts th Edition, Feb, 5 et 6 =. 6.. = + 6 + + )/ = un(nouveau processus arrive avec un temps d exe cution plus court.restant au processus en cours d exe cution, on lui donne le CPU. Shortestque Ple temps. Remaining-Time-First (SRTF). Silberschatz, Galvin and Gagne 5 Operating System Concepts Feb, 5. P leedition, 5. Avec me me exemple, on obtient SJF (preemptive) P 5 Temps d attente moyen: 9+++ j + + ( )n+. Ordonnancement Round-Robin (RR) Chaque processus obtient le CPU pour une courte dure e (time quantum), usuellement entre et millisecondes. Ensuite, le processus est pre empte et remis dans la file ready. Ainsi, s il y a n processus ready et le time quantum est q, chaque processus obtient /n-e me du temps CPU en tranches d au plus q a la fois. Ainsi, chaque processus n attend jamais plus de unite s de temps. Example of(nrr)q with Time Quantum = Exemple avec q = et processus: Silberschatz, Galvin and Gagne 5 est tel que ; et =. ) n. 68 P P P P 5 9 5 6 Le temps de turnaround est souvent plus e leve que celui de SJF, mais meilleur temps de Typically, higher re ponse. Temps de burst 5 68 The Gantt chart is: n+ est la valeur pre dite du prochain burst n +, et n+ = tn + ( Burst TimeProcessus 5 Process tn est la longueur du burst n; Exemple avec = )j tn Silberschatz, Galvin and Gagne 5 sont plus petits que, et donc les termes ont de moins en moins de poids. Proble mes de SJF: il faut connaı tre la longueur du prochain burst CPU! S il n est pas donne par l utilisateur (limite sur le temps d exe cution), il faut pre dire cette longueur. Utilisation du moyennage exponentiel (exponential averaging): + + ( Ordonnancement avec priorite 6..5 =. SJF est optimal (dans sa version pre emptive, ou avec tous les temps d arrive e a ) pour minimiser le temps d attente moyen. Si l on fait passer un processus court devant un plus long, cela diminue le temps d attente du court plus que l augmentation du temps d attente du long. Ainsi, le temps d attente moyen diminue. Exemple non pre emptif: arrive au temps et dure, arrive au temps et dure. SJF exe cute d abord puis, ce qui donne un temps d attente de 8/ =, alors que l exe cution puis donne un temps d attente de / =.. 6 Average waiting time = (9 + + +)/ = Operating System Concepts th Edition, Feb, 5 ) tn. Associer une priorite a chaque processus, et donner le CPU au processus le plus prioritaire (petit entier = haute priorite ). Version pre emptive ou non. SJF: algorithme avec priorite, ou la priorite est l estimation de la longueur du prochain burst CPU. Proble me de famine: un processus de faible priorite peut ne jamais s exe cuter. Solution: aging (vieillissement): augmenter la priorite d un processus avec le temps. th =, l histoire re cente ne compte pas (i.e., n+ = n ), alors que si =, seul le dernier CPU burst compte (i.e., n+ = tn ). On peut e tendre la formule: =½ P Example of Preemptive SJF average turnaround than SJF, but better response Operating System Concepts th Edition, Feb, 5. 8 Silberschatz, Galvin and Gagne 5

Time Quantum and Context Switch Time Si q est très grand, on se retrouve avec du FCFS. Si q est petit, on a un trop grand surcoût lié aux changements de contexte. Typiquement, q entre et milli-secondes, alors que le changement de contexte dure moins de micro-secondes. Three queues: Example of Multilevel Feedback Queue Q RR with time quantum 8 milliseconds Q RR time quantum 6 milliseconds Q FCFS Exemple avec files, deux avec RR (q =8ouq = 6) et une avec FCFS: Entrée dans la file avec q =8,s ilneterminepasen8millisecondes,ilpassedansla Scheduling file avec q = 6. S il ne termine pas avec les 6 millisecondes de plus, il passe dans la file A new job enters queue Q which is served RR. When it gains Le temps de turnaround moyen est plus petit si la plupart des processus terminent FCFS. CPU, job receives 8 milliseconds. If it does not finish in 8 leur CPU burst durant un q; bon résultats si 8% des CPU burst sont plus petits que q. milliseconds, job is moved to queue Q. 6..6 Files à plusieurs niveaux.9 Silberschatz, Galvin and Gagne 5 Partager la file ready en plusieurs files distinctes, et chaque file a son propre algorithme d ordonnancement. Exemple: tâches interactives ordonnancées en RR, et tâches batch en FCFS. Multilevel Queue Scheduling Ordonnancement entre les files: à priorité fixée (on sert d abord les tâches de la file la plus prioritaire; risque de famine) ou avec un partage de temps (par exemple, 8% du temps pour les tâches interactives, et % pour les batch). At Q job is again served RR and receives 6 additional milliseconds. If it still does not complete, it is preempted and moved to queue Q. 6. Ordonnancement multi-processeur ou temps réel L ordonnancement est plus compliqué en multi-processeur, il faut équilibrer la charge entre les processeurs. Besoin de synchronisation entre processeurs. Temps réel: il faut terminer des tâches critiques avant des dates fixées d avance (hard),. Silberschatz, Galvin and Gagne 5 ou alors donner une plus grande priorité aux tâches critiques (soft).. Operating System Examples 6. Exemples d OS Solaris scheduling Windows XP scheduling Linux scheduling Solaris. Trois catégories: Solaris Scheduling 6.. File avec retour d information. Silberschatz, Galvin and Gagne 5 Permet de déplacer un processus d une file à une autre, ce qui permet d implémenter le vieillissement. Ordonnanceur défini par le nombre de files; l algorithme d ordonnancement de chaque file; méthode pour décider quand promouvoir un processus; méthode pour décider quand rétrograder un processus; méthode pour déterminer dans quelle file faire rentrer un nouveau processus. TableSolaris de dispatch Dispatch pour les Table threads interactifs et à partage de temps. Les processus.8 Silberschatz, Galvin and Gagne 5 de forte (interactive prioritéand ont time-sharing un plus petitthreads) q, une nouvelle priorité plus basse à expiration de q (ème colonne). Après une I/O, plus grande priorité (ème colonne). (low) (high).9 Silberschatz, Galvin and Gagne 5 9

Windows XP Priorities Windows XP. Basé sur la priorité, algo préemptif et RR. Listes parcourues par ordre de priorité, l ordonnanceur cherche le thread de plus haute priorité qui est ready. Priorités: classe temps-réel, entre 6 et, et les autres ont des priorités entre et 5. Comme avec Solaris, priorité plus basse à expiration d un time quantum, et priorité augmentée au retour d une I/O. (Priorité réservée pour la gestion mémoire). 6.5 Evaluation des algorithmes Di érents critères, évoqués précédemment: utilisation CPU, temps de réponse, débit,... Modélisation déterministe: pour un workload donné, comparer la performance des algorithmes (comme vu sur exemples). Modèles de files d attente: distribution des burst CPU et I/O, et distribution des temps d arrivée. Utilisation de la formule de Little: si la file a une longueur n, le temps d attente moyen est W, et le taux moyen d arrivée est,alorsn = W. Exemple avec =processus/sec: pendantuneattentedew = sec, processus arrivent. A l état Evaluation stationnaire, of il ycpu a autant schedulers d entrées que by simulation de sorties, d où n = W. Evaluation par simulation: précision limitée, mais plus facile qu une vraie implémentation. Linux. Deux classes de priorité, pour le partage de temps (mise à jour des priorités comme précédemment) et le temps réel (priorités statiques). Ordonnancement basé sur des crédits: le processus avec le plus de crédits est ordonnancé; on enlève des crédits lors d une interruption du timer, et si le crédit atteint, on The choisit Relationship un autrebetween processus. Priorities Lorsque and tous Time-slice les processus length ont un crédit de, on redonne des crédits (basé sur la priorité et l historique).. Silberschatz, Galvin and Gagne 5 Contrairement à précédemment, les petits numéros correspondent aux grandes priorités, et on leur donne un grand q: 6.6 Conclusion Ordonnancement: choisir un processus prêt et lui donner du temps CPU..5 Silberschatz, Galvin and Gagne 5 FCFS: algo simple mais des processus courts peuvent attendre longtemps. SJF: optimal mais di cile de prédire la longueur d un burst. Cas spécial d algos avec priorités. Attention à éviter la famine (faire vieillir les processus). RR: algo préemptif pour systèmes interactifs. List of Tasks Indexed According to Priorities On a une liste de tâches par priorité, et à la fin de la tranche de temps, la tâche va dans le tableau expired. Une fois le tableau active vide, on les échange. Algos à plusieurs niveaux de files d attentes, combinant par exemple RR et FCFS. Méthodes pour évaluer ces algorithmes.. Silberschatz, Galvin and Gagne 5. Silberschatz, Galvin and Gagne 5