Plan du cours. - Introduction - Emergence et évolution des systèmes d exploitation - Système de fichiers : FAT - NTFS - Ordonnancement



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

Cours A7 : Temps Réel

Un ordonnanceur stupide

Virtualisation logicielle De la machine réelle à la machine virtuelle abstraite

DUT Informatique Module Système S4 C Département Informatique 2009 / Travaux Pratiques n o 5 : Sockets Stream

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

Partie 7 : Gestion de la mémoire

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

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

Cours Programmation Système

Introduction aux Systèmes et aux Réseaux

Systèmes et exécutifs temps-réel

Systèmes d exploitation Gestion de processus

1 Mesure de la performance d un système temps réel : la gigue

Configurer un réseau domestique. Partager ses fichiers, ses dossiers et ses imprimantes sur tous ses PC.

REALISATION d'un. ORDONNANCEUR à ECHEANCES

Bases de programmation. Cours 5. Structurer les données

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

Chapitre 4 : Outils de communication centralisés entre processus

Contributions à l expérimentation sur les systèmes distribués de grande taille

Cours de Systèmes d Exploitation

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

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

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

MEAD : temps réel et tolérance aux pannes pour CORBA

Linux embarqué Retour d expérience et temps réel. Denis Coupvent-Desgraviers

Programmation impérative

Ordonnancement temps réel

OSCAR Un outil gratuit libre d images disque

Fonctionnalités d Acronis :

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Cours A7 : Temps Réel

Gestion des processus

Programmation parallèle et distribuée

Chapitre 2. Les processus. 2.1 Introduction. 2.2 les différents états d un processus

Ce TP consiste à installer, configurer et tester un serveur DNS sous Linux. Serveur open source : bind9 Distribution : Mandriva

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

VMWare Infrastructure 3

Cours 1 : La compilation

LE PROBLEME DU PLUS COURT CHEMIN

SDIS 84 PROJET INFOGERANCE PROCEDURE. Procédure

Systemes d'exploitation des ordinateurs

UC4 effectue tout l ordonnancement batch pour Allianz en Allemagne

Nagios 3 pour la supervision et la métrologie

SERVEUR MONITOR. le carnet de santé de votre informatique. Arrêtez le mal avant qu il n existe, calmez le désordre avant qu il n éclate.

Réalisation d un OS 32 bits pour PC(x86)

Equilibrage de charge (Load

JOMARON Sébastien BTS SIO 2012/2014. Titre de l activité: Surveiller des hôtes et des services avec NAGIOS

Programmation C++ (débutant)/instructions for, while et do...while

Machines virtuelles Cours 1 : Introduction

Analyse du temps de réponse des systèmes temps réel

Architecture ordinateur. Organisation mémoire et Entrées/Sorties

La fonction exponentielle

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

TP 4 de familiarisation avec Unix

Gestion mémoire et Représentation intermédiaire

FAMILLE EMC VPLEX. Disponibilité continue et mobilité des données dans et entre les datacenters AVANTAGES

PROJET PERSONNALISÉ ENCADRÉ : N 6

Mesurer les performances (CPU) sous Linux

IV- Comment fonctionne un ordinateur?

Solutions McAfee pour la sécurité des serveurs

Présentation du langage et premières fonctions

Algorithmique et Programmation, IMA

Atelier C TIA Portal CTIA06 : programmation des automates S7-300 Blocs d organisation

QoS Réseaux haut débit et Qualité de service

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

I-JVM: une machine virtuelle Java pour l isolation de composants dans OSGi

I. Objectifs de ce document : II. Le changement d architecture :

Intelligence Artificielle et Systèmes Multi-Agents. Badr Benmammar

40èmes Olympiades des métiers

Ordonnancement temps réel

Temps Réel. Jérôme Pouiller Septembre 2011


Chapitre V : La gestion de la mémoire. Hiérarchie de mémoires Objectifs Méthodes d'allocation Simulation de mémoire virtuelle Le mapping

LES OLYMPIADES DES METIERS. paration aux sélections s. Guide de préparation. régionalesr. Métier n 39 : GESTION DES RESEAUX INFORMATIQUES

TP4 : Firewall IPTABLES

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Module 16 : Les fonctions de recherche et de référence

L aspect esthétique, l offre logicielle,

L assistant Boot Camp pour utiliser aussi Windows sur un Mac sous OS X Yosemite

Accédez au test ici

Programmation Système : KeyStroker

L informatique en BCPST

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Support de cours système d exploitation

L exclusion mutuelle distribuée

ALGORITHMIQUE ET PROGRAMMATION En C

Systèmes d Exploitation - ENSIN6U3. Aix-Marseille Université

Annexe 6. Notions d ordonnancement.

Chapitre 2. Classes et objets

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

NFP 121. Java et les Threads. Présentation : Thierry Escalarasse Mai 2007

Entraînement au concours ACM-ICPC

LAB : Schéma. Compagnie C / /24 NETASQ

Chapitre 1 I:\ Soyez courageux!

7 avantages à la virtualisation des applications stratégiques de votre entreprise

Transcription:

Plan du cours - Introduction - Emergence et évolution des systèmes d exploitation - Système de fichiers : FAT - NTFS - Ordonnancement Systèmes d exploitation 1ère année p. 1

Ordonnancement - rappels - processus - états d un processus - mécanisme des interruptions - multitâches Systèmes d exploitation 1ère année p. 2

Ordonnacement : plan - définition de l ordonnancement - ordonnancement de type tourniquet - ordonnancement par priorités - files d attente multiples - ordonnancement garanti Systèmes d exploitation 1ère année p. 3

Ordonnacement : définition (1) Plusieurs processus sont dans l état prêt. L ordonnanceur (scheduler) doit élire un nouveau processus. Lequel? Systèmes d exploitation 1ère année p. 4

Ordonnancement : définition (2) L algorithme du sheduler doit être conçu pour prendre des décisions en fonction de différents points de vue : - équité (votre voisin compile 10 fois plus vite...) - temps de réponse (le calcul de pi vous empêche de taper) - temps d exécution ( chaque E/S vous pénalise) - rendement/efficacité (90% du processeur est pour le scheduler) - équilibre (toutes les parties du système sont utilisées) -... Systèmes d exploitation 1ère année p. 5

Ordonnancement : définition (3) L ordonnanceur a un rôle très important dans un S.E. multitâche. Privilégier un point de vue se fait au détriment d un autre... Pour les systèmes intéractifs on se souciera plus d améliorer les temps de réponse Systèmes d exploitation 1ère année p. 6

Ordonnancement : définition (3) Compromis à trouver en tâchant que - chaque processus ait sa part - le processeur soit utilisé à 100% - le temps de réponse (en interactif) soit minimum - le nombre de travaux achevés/unité de temps soit maximum -... Il n existe pas de solution idéale pour toutes les situations : nous allons étudier certaines techniques... Systèmes d exploitation 1ère année p. 7

Ordonnancement : tourniquet Chaque processus prêt reçoit, à tour de rôle, un quantum de temps processeur. Un processus est interrompu soit - parce qu il a terminé - parce qu il a besoin d une E/S (élu -> bloqué) - parce qu il a épuisé son quantum de temps Le sheduleur élit alors le suivant de la liste...etc... + algorithme simple à écrire. - comment fixer le quantum? Systèmes d exploitation 1ère année p. 8

Ordonnancement : quantum Si sheduler utilise 5ms pour échanger un processus (échange de contexte, mise à jour de tables,...) et si 10 processus prêts en même temps Quantum temps maximum attente efficacité du processeur 5 ms 90 ms 50% = 5/10 100 ms +/- 1 sec 95% = 100/105 1 sec +/- 10 sec 99,5% = 1000/1005 Souvent utilisé avec un compromis de 100 ms pour le quantum. (Sur linux1, si on choisit cet ordonnanceur, il vaut 60 ms) Systèmes d exploitation 1ère année p. 9

Ordonnancement : priorité La technique du tourniquet place tous les processus sur le même niveau. Mais on sait que certains processus sont plus importants que d autres Il est souvent nécessaire d associer une priorité aux processus A chaque processus, on associe une priorité. Le sheduler élit les processus par priorité décroissante -> risque de famine pour les processus de petite priorité Systèmes d exploitation 1ère année p. 10

Ordonnancement : prio dynamique( Solution : priorité dynamique (-1 à chaque accès au processeur par exemple) Désavantage : on oublie sa priorité de départ Idée suivante : on favorise les processus qui demandent beaucoup d E/S en leur attribuant tout de suite le processeur. Systèmes d exploitation 1ère année p. 11

Ordonnancement : prio dynamique( Un processus qui demande beaucoup d E/S doit être favorisé ( car les E/S se font en // avec le processeur et interactivité ) priorité = quantum / temps du quantum utilisé Par exemple, un processus qui reçoit un quantum de 100 ms et qui est bloqué par demande d E/S après 5 ms, recevra une priorité de 100/5 = 20. Un processus qui utilise tout son quantum recevra une priorité de 1. Systèmes d exploitation 1ère année p. 12

Ordonnancement : Files multiples Processus qui utilisent beaucoup le CPU et peu les E/S ont une performance qui augmente quand le quantum est grand. Processus qui utilisent peu le CPU et beaucoup les E/S ont un temps de réponse meilleur quand le quantum est petit. Il faudrait donner un grand quantum à un processus qui demande beaucoup de calcul Il faudrait donner une priorité plus grande et un petit quantum à un processus qui demande beaucoup d E/S. On peut tenter de régler ce problème avec les priorités. Systèmes d exploitation 1ère année p. 13

Ordonnancement : Classes (1) Classe Quantum priorité remarque 1 40 ms 5 pour un processus d E/S 2 80 ms 4... 3 160 ms 3 intermédiaire 4 320 ms 2... 5 640 ms 1 pour un processus de calcul On a, dans cet exemple, 5 tourniquets, un par classe. Tous les processus prêts de chacune des classes reçoivent un quantum. Un processus de classe inférieure est élu quand aucun processus d une classe supérieure n est prêt. Systèmes d exploitation 1ère année p. 14

Ordonnancement : Classes (2) Comment connaître la classe d un processus? En la fixant au départ. Désavantage : tous vont se mettre en classe 1! En faisant évoluer : au départ : classe 1 et chaque fois que le processus consomme son quantum, il descend de classe. + Les processus avec beaucoup d E/S restent en classe 1 + Les processus avec beaucoup de CPU ont des grands quanta - Un processus qui demande beaucoup d E/S après un long calcul n est pas à sa place Systèmes d exploitation 1ère année p. 15

Ordonnancement : Classes (3) - Un processus qui demande beaucoup d E/S après un long calcul n est pas à sa place Pour remédier à cet inconvénient : à chaque E/S, le processus remonte en classe 1 mais, à cause de la nature humaine, cela ne fonctionne pas : il suffit de pousser régulièrement sur enter pour remonter en classe 1. Systèmes d exploitation 1ère année p. 16

Ordonnancement : exercice (1) Des mesures sur un système ont montré que les processus s exécutent en moyenne pendant T secondes avant de se bloquer sur une E/S. Une commutation de processus se fait en S secondes. Pour un ordonnancement circulaire avec un quantum de Q secondes, donnez l efficacité du processeur si (a) Q = infini, (b) Q>T, (c) S<Q<T, (d) Q=S, (e) Q=0. Réponses :(a)=(b) : T/(S + T) (c) : Q/(S + Q) (d) 0.5 (e) 0 Systèmes d exploitation 1ère année p. 17

Ordonnancement : exercice (2) - L ordonnancement du tourniquet utilise le plus souvent un quantum fixe. Donnez un argument en faveur d un petit quantum et un argument en faveur d un grand quantum. - soit un quantum de 92ms et un temps d ordonnancement de 8ms calculez l efficacité du processeur. Systèmes d exploitation 1ère année p. 18

Questions : VRAI-FAUX - Donner une haute priorité à un processus favorise son temps de réponse - Avec un ordonnancement par tourniquet un processus s interrompt pour différentes raisons - un ordonnanceur à priorités statiques améliore le temps de réponse de tous les processus Systèmes d exploitation 1ère année p. 19