2 - Gestion de Processus-1213



Comments



Description

Université Med.V Souissi - ENSET DE RABAT - 1° GLR HACHEM EL YOUSFI ALAOUI 2012 -2013 ENSET de Rabat - 1ére GLR - Hachem EL YOUSFI ALAOUI ENSET DE RABAT 2010-2011 Concepts élémentaires  Programme: Un programme est une suite figée     d'instructions, un ensemble statique. Processus: c’est l'instance d'exécution d'un programme dans un certain contexte pour un ensemble particulier de données. Espace adresse d’un processus: ensembles des locations en mémoire auxquelles le processus est autorisé à accéder = = = > Espace virtuel Temps partagé: dans un espace multiprogrammé, les différents processus doivent se partager l’accès aux ressources (UCT, mémoire et périphériques) Une fraction de temps doit être accordé à chacun des processus ENSET de Rabat - 1ére GLR - Hachem EL YOUSFI ALAOUI ENSET DE RABAT 2010-2011 Contexte d’un processus  Contexte d'un processus: Le contexte d'un événement      inclut les circonstances et conditions qui l'entourent C’est l’ensemble des conditions sous lesquelles un dispositif est en train d'être utilisé. Il existe deux contextes : le contexte matériel et le contexte logiciel. Le contexte matériel: Etat des registres à un instant t : Le contexte logiciel contient des informations sur les conditions et droits d'accès aux ressources de la machine . Le bloc de contrôle d'un processus (en anglais Process Control Block ou PCB) est une structure de données qui contient toutes les informations relatives au contexte d'un processus. ENSET de Rabat - 1ére GLR - Hachem EL YOUSFI ALAOUI ENSET DE RABAT 2010-2011 PCB - Détails  Le PCB est composé des  éléments fondamentaux suivants:  Un état  Un espace d'adressage  Gestion de la mémoire  Table de fichiers ouverts  Un ou plusieurs contexte(s) d'éxecution  Un compteur ordinal (PC)  Des registres de données  Une pile ENSET de Rabat - 1ére GLR - Hachem EL YOUSFI ALAOUI en attente. prêt. fini.1ére GLR .ENSET DE RABAT 2010-2011 Etats d’un processus  Un processus peut être dans l’un des cinq états différents: nouveau. élu(en exécution).Hachem EL YOUSFI ALAOUI . ENSET de Rabat . Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 Processus – Etats et transitions ENSET de Rabat .1ére GLR . Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 Mécanisme de changement de contexte ENSET de Rabat .1ére GLR . ENSET de Rabat .  Nous allons nous intéresser à deux mécanismes de gestion des processus  Ordonnancement (Scheduling): Effectué par un répartiteur quidécide quels processus doivent être admis. etc. en contrôle de l’UCT et en attente d’E/S.Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 Mécanisme de gestion des processus  Un processus est constitué d’une alternance de sections durant lesquelles il est actif. lequel doit être activé.  Synchronisation: certains procesus peuvent avoir à accéder aux mêmes ressources et il faut gérer les droits d’accès.1ére GLR .  Un (au plus) de ces processus peut être dans l’UCT  Plusieurs processeurs pourront être en attente d’E/S  D’autres seront prêts à occuper l’UCT. n processus sont en concurrence pour l’accès aux ressources.Hachem EL YOUSFI ALAOUI .1ére GLR .ENSET DE RABAT 2010-2011 Ordonnanceurs (schedulers)  Programmes qui gèrent l’utilisation de ressources de l`ordinateur  Dans un système multiprogrammé. File d’attente : Une file d’attente pour les processus prêts pour accéder à l’UCT. Une file d’attente pour les processus en attente d’un périphérique ou E/S ENSET de Rabat . 1ére GLR .Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 Ordonnancement de processus (court terme)  Dans le cas 1 et 4 il y a ordonnancement de processus et l'ordonnancement est dit non-préemptif  Dans le cas 2 et 3il peut y avoir ordonnancement de processus et l'ordonnancement est dit préemptif ENSET de Rabat . pour être repris plus tard  ‘swap out’.1ére GLR . va-et-vient ENSET de Rabat .ENSET DE RABAT 2010-2011 Ordonnancement à moyen terme  Le manque de ressources peut parfois forcer le SE à suspendre des processus  ils seront plus en concurrence avec les autres pour des ressources  ils seront repris plus tard quand les ressources deviendront disponibles  Ces processus sont enlevés de mémoire centrale et mis en mémoire secondaire.Hachem EL YOUSFI ALAOUI . ‘swap in’ . 1ére GLR .Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 Ordonnanceurs à court et moyen terme ENSET de Rabat . 1ére GLR .Hachem EL YOUSFI ALAOUI .ENSET DE RABAT 2010-2011 ENSET de Rabat . etc).Hachem EL YOUSFI ALAOUI . les principes que nous verrons s’appliquent aussi à l ’ordonnancement des autres ressources (unités E/S. donc nous parlons d’elle  Cependant.Ordonnancement Processus : Concepts de base  La multiprogrammation est conçue pour obtenir une utilisation maximale des ressources.1ére GLR . ENSET de Rabat . surtout l’UCT  L’ordonnanceur UCT est la partie du SE qui décide quel processus dans la file ready/prêt obtient l ’UCT quand elle devient libre  doit viser à une utilisation optimale de l ’UCT  l’UCT est la ressource la plus précieuse dans un ordinateur. Hachem EL YOUSFI ALAOUI .1ére GLR .ENSET DE RABAT 2010-2011 ENSET de Rabat . 1ére GLR . L ’ordonnanceur doit prendre sa décision chaque fois que le processus exécutant est interrompu. Quand invoquer l’ordonnanceur  un processus se se présente en tant que nouveau ou se     termine ou un processus exécutant devient bloqué en attente un processus change d’exécutant/running à prêt/ready un processus change de attente à prêt/read en conclusion. tout événement dans un système cause une interruption de l’UCT et l’intervention de l’ordonnanceur. qui devra prendre une décision concernant quel proc ou fil aura l’UCT après  Préemption: on a préemption dans les derniers deux cas si on enlève l’UCT à un processus qui l’avait et peut continuer à s’en servir  Dans les 1ers deux cas. il n’y a pas de préemption ENSET de Rabat . c-à.-d.Hachem EL YOUSFI ALAOUI . ENSET DE RABAT 2010-2011 ENSET de Rabat .Hachem EL YOUSFI ALAOUI .1ére GLR . Ordonnancement : Critères  Utilisation UCT: pourcentage d’utilisation  Débit = Throughput: nombre de processus qui complètent dans l ’unité de temps  Temps de rotation = turnaround: le temps pris par le processus de son arrivée à sa terminaison.1ére GLR .Hachem EL YOUSFI ALAOUI .  Temps d’attente: attente dans la file prêt (somme de tout le temps passé en file prêt)  Temps de réponse (pour les systèmes interactifs): le temps entre une demande et la réponse ENSET de Rabat . ENSET DE RABAT 2010-2011 ENSET de Rabat .1ére GLR .Hachem EL YOUSFI ALAOUI . Hachem EL YOUSFI ALAOUI .1ére GLR .ENSET DE RABAT 2010-2011 ENSET de Rabat . ENSET DE RABAT 2010-2011 ENSET de Rabat .1ére GLR .Hachem EL YOUSFI ALAOUI . 1ére GLR .Hachem EL YOUSFI ALAOUI .Ordonnancement : Critères  Utilisation UCT: pourcentage d’utilisation  ceci est à maximiser  Débit = Throughput: nombre de processus qui complètent dans l ’unité de temps  ceci est à maximiser  Temps de rotation (turnaround): temps terminaison moins temps arrivée  à minimiser à minimiser  Temps d’attente: attente dans la file prêt   Temps de réponse (pour les systèmes interactifs): le temps entre une demande et la réponse  à minimiser ENSET de Rabat . Ordonnancement: Algorithmes  FCFS ou PAPS First Come First Served  SJF ou Plus court d’abord Shortest Job First  RR ou le tourniquet Round-Robin  Ordonnancement par priorité avec/sans files d'attente multiples ENSET de Rabat .Hachem EL YOUSFI ALAOUI .1ére GLR . Hachem EL YOUSFI ALAOUI .1ére GLR .come. P3 Le diagramme Gantt est: 0 24 27 30 ENSET de Rabat . FCFS)  Exemple:  Processus Temps de cycle P1 24  P2 3  P3 3 P  Si les processus1arrivent au temps P2 dans P3 0 l’ordre: P1 . P2 . first serve. 1  3 processus complétés en 30 unités de temps  Temps de rotation moyen: (24+27+30)/3 = 27 P1 0 24 P2 27 P3 30 ENSET de Rabat .Hachem EL YOUSFI ALAOUI .1ére GLR .Premier arrive. premier servi  Utilisation UCT = 100%  Débit = 3/30 = 0. 1ére GLR .Hachem EL YOUSFI ALAOUI .Tenir compte du temps d’arrivée!  Dans le cas où les processus arrivent à des moments différents. il faut soustraire les temps d’arrivée  Exercice: répéter les calculs si:  P0 arrive à temps 0  P1 arrive à temps 2  P3 arrive à temps 5 ENSET de Rabat . 1ére GLR . Le diagramme de Gantt est: 30  Temps d’attente pour P1 = 6 P2 = 0 P3 = 3  Temps moyen d’attente: (6 + 0 + 3)/3 = 3  Beaucoup mieux!  Donc pour cette technique. le temps d’attente moyen peut varier grandement ENSET de Rabat . P2 . P3 .) P2 0 3 P3 6 P1 Si les mêmes processus arrivent à dans l’ordre . P1 .FCFS Scheduling (Cont.Hachem EL YOUSFI ALAOUI . Plus Court d’abord = Shortest Job First (SJF)  Le processus le plus court part le premier  Optimal en principe du point de vue du temps d’attente moyen  (v.1ére GLR . le dernier exemple)  Mais comment savons-nous ENSET de Rabat .Hachem EL YOUSFI ALAOUI . 1ére GLR . l’UCT est donnée à ce nouveau processus  SRTF: shortest remaining-time first  Sans préemption: on permet au processus courant de terminer son cycle  Observation: SRTF est plus logique car de toute façon le processus exécutant sera interrompu par l’arrivée du nouveau processus  Il est retourné à l’état prêt ENSET de Rabat .SJF avec préemption (réquisition) ou non  Avec préemption: si un processus qui dure moins que le restant du processus courant se présente plus tard.Hachem EL YOUSFI ALAOUI . P3 arr.1ére GLR .Hachem EL YOUSFI ALAOUI .Example de SJF sans préemption Processus P1 P2 P3 P4  Arrivée 0 2 4 5 Cycle 7 4 1 4 SJF (sans préemption) P1 0 3 P2 arr. 7 P4 arr P3 8 P2 12 P4 16  Temps d’attente moyen = (0 + 6 + 3 + 7)/4 = 4 ENSET de Rabat . 1ére GLR . P3 arr.Exemple de SJF avec préemption SRTF Processus P1 P2 P3 P4 SJF (préemptive) P1 0 Arrivée 0 2 4 5 Cycle 7 4 1 4  P2 P3 P2 P4 11 P1 16 2 4 5 7 P2 arr. P4 arr  Temps moyen d`attente = (9 + 1 + 0 +2)/4 = 3  P1 attend de 2 à 11. P2 de 4 à 5. P4 de 5 à 7 ENSET de Rabat .Hachem EL YOUSFI ALAOUI . Le plus court d’abord SJF: critique  Difficulté d’estimer la longueur à l’avance  Les processus longs souffriront de famine lorsqu’il y a un apport constant de processus courts  La préemption est nécessaire pour environnements à temps partagé  Un processus long peut monopoliser l’UCT s’il est le 1er à entrer dans le système et il ne fait pas d’E/S  Il y a assignation implicite de priorités: préférences aux travaux plus courts ENSET de Rabat .Hachem EL YOUSFI ALAOUI .1ére GLR . il est interrompu par la minuterie et l ’UCT est donnée à un autre processus  Le processus interrompu redevient prêt (à la fin de la file)  Méthode préemptive P[0] P[1] P[7] P[6] P[5] P[4] ENSET de Rabat . 10-100 millisecs.ex.utilisé en pratique  Chaque processus est alloué un quantum de temps (p.Hachem EL YOUSFI ALAOUI P[2] P[3] La file prêt est un cercle (dont RR) .1ére GLR .) pour s’exécuter  (tranche de temps)  S’il s’exécute pour un quantum entier sans autres interruptions.  temps de rotation (turnaround) plus élévé que SJF  mais temps attente moyen meilleur – contrôlez! ENSET de Rabat .Exemple: Tourniquet Quantum = 20 Processus P1 P2 P3 P4 Cycle 53 17 68 24 P1 0  P2 20 37 P3 57 P4 77 P1 P3 97 117 P4 P1 P3 P3 121 134 154 162 Normalement.Hachem EL YOUSFI ALAOUI .1ére GLR . 1ére GLR .Hachem EL YOUSFI ALAOUI .Un petit quantum augmente les commutations de contexte (temps de SE) ENSET de Rabat . 1ére GLR .Choix du quantum pour le tourniquet   doit être beaucoup plus grand que le temps requis pour exécuter le changement de contexte doit être un peu plus grand que le cycle typique (pour donner le temps à la plupart des processus de terminer leur cycle.Hachem EL YOUSFI ALAOUI . mais pas trop pour éviter de pénaliser les processus courts) ENSET de Rabat . Hachem EL YOUSFI ALAOUI . un nombre entier)  souvent les petits chiffres dénotent des hautes priorités  0 la plus haute  L’UCT est donnée au processus prêt avec la plus haute priorité  avec ou sans préemption  il y a une file prêt pour chaque priorité ENSET de Rabat .Priorités  Affectation d’une priorité à chaque processus (p.ex.1ére GLR . 1ére GLR .Hachem EL YOUSFI ALAOUI .Problème possible avec les  Famine: les processus moins prioritaires n’arrivent priorités jamais à exécuter  Solution: vieillissement:  modifier la priorité d’un processus en fonction de son âge et de son historique d’exécution  le processus change de file d`attente  Plus en général. la modification dynamique des priorités est une politique souvent utilisée ENSET de Rabat . Files à plusieurs niveaux (multiples)  La file prêt est séparée en plusieurs files.  travaux ‘d’arrière-plan’ (background . p.  FCFS pour arrière-plan  tourniquet pour premier plan  Comment ordonnancer entre files?  Priorité fixe à chaque file  famine possible.ex.Hachem EL YOUSFI ALAOUI .interactive)  Chaque file a son propre algorithme d ’ordonnancement.batch)  travaux ‘de premier plan’ (foreground .ex. p.ex. p.1ére GLR .  80% pour arrière-plan  20% pour premier plan ENSET de Rabat . ou  Chaque file reçoit un certain pourcentage de temps UCT. 1ére GLR .Hachem EL YOUSFI ALAOUI .Ordonnancement avec files multiples ENSET de Rabat . p.ex.1ére GLR . pour un proc qui devient prêt. quand il a passé trop de temps dans une file  À déterminer:  nombre de files  algorithmes d ’ordonnancement pour chaque file  algorithmes pour décider quand un proc doit passer d ’une file à l`autre  algorithme pour déterminer.Hachem EL YOUSFI ALAOUI .Files multiples et à retour  Un processus peut passer d ’une file à l ’autre. sur quelle file il doit être mis ENSET de Rabat . Hachem EL YOUSFI ALAOUI .PRIO = 0 Files multiples et à retour PRIO = 1 PRIO = 2 ENSET de Rabat .1ére GLR . il reçoit 8 msecs d ’UCT  S ’il ne finit pas dans les 8 msecs.Exemple de files multiples à retour  Trois files:  Q0: tourniquet. quantum 16 msecs  Q2: FCFS  Ordonnancement:  Un nouveau processus entre dans Q0. il est interrompu et mis dans Q2  Si plus tard il commence à demander des quantums plus petits.Hachem EL YOUSFI ALAOUI . il pourrait retourner à Q0 ou Q1 ENSET de Rabat .1ére GLR . il reçoit 16 msecs additionnels  S ’il ne finit pas encore. quantum 8 msecs  Q1: tourniquet. il est mis dans Q1. En pratique.  Les méthodes que nous avons vu sont toutes utilisées en pratique (sauf plus court servi pur qui est impossible)  Les SE sophistiqués fournissent au gérant du système une librairie de méthodes. plusieurs params sont disponibles: p.Hachem EL YOUSFI ALAOUI .ex. etc.. coefficients. durée du quantum. ENSET de Rabat . qu’il peut choisir et combiner au besoin après avoir observé le comportement du système  Pour chaque méthode.1ére GLR .. cette étude ne considère pas du tout les temps d’exécution de l’ordonnanceur ENSET de Rabat . on pourrait avoir aussi des infos complètes concernant le temps de cycle prévu. Dans le cas de ces unités. ne     considère pas en détail tous les problèmes qui se présentent dans l’ordonnancement UCT P.Hachem EL YOUSFI ALAOUI . Aussi. comme une imprimante.Aussi…  Notre étude des méthodes d’ordonnancement est théorique. une unité disque. etc.ex. l’UCT sera souvent interrompue par quelque événement externe avant la fin de son cycle Cependant les mêmes principes d’ordonnancement s’appliquent à unités qui ne peuvent pas être interrompues.1ére GLR . etc. les ordonnanceurs UCT ne peuvent pas donner l’UCT à un processus pour tout le temps dont il a besoin  Car en pratique.
Copyright © 2024 DOKUMEN.SITE Inc.