[PDF] Diapositive 1 15 déc. 2016 Gestionnaire





Previous PDF Next PDF



Recueil dexercices corrigés en INFORMATIQUE I

Corrigés des exercices : Systèmes d'exploitation Petite mémoire contenue dans le microprocesseur destiné à stocker de manière très temporaire.



TD n°6 : Gestion de la mémoire CORRECTION

Projet DVD-MIAGE 2010. TD n°6 : Gestion de la mémoire. CORRECTION. Exercice 1 – Notions de cours. 1) cf. cours. 2) fragmentation interne ? système paginés 



Travaux Dirigés

15 déc. 2016 ESEN Univ. Manouba. Systèmes d'Exploitation Avancés ... Exercice I. • Considérez un système de gestion de mémoire ... Correction exercice I.



Question de cours (3 points) Exercice 2 – Gestion de la mémoire (6

Chaque segment peut occuper 4Mo de mémoire. Le système d'exploitation autorise jusqu'à 1024 processus. 1. Quelle est la taille (en bits) de l'adresse 



Chapitre 7 : Gestion de la mémoire

Exercice 2. Dans un système de gestion mémoire à partitions variables on constate que la liste des "trous" est la suivante (dans l'ordre des adresses 



Comptabilité et analyse des états financiers

Applications avec exercices corrigés Le système comptable est aujourd'hui une composante d'un système ... le principe de continuité d'exploitation.



Systèmes dexploitation & Programmation concurrente TD Gestion

Exercice 1: Ordonnancement et gestion mémoire (exam. 1-2017) le système applique l'algorithme Best Fit pour le placement des processus dans cette.



Examen de Systèmes dExploitation 2

14 mars 2015 Exercice 1 : (Parallelisation d'un système de tâches) (5pts) ... Exercices 2 : Gestion de la mémoire (6.5pts) ... Corrigé de l'examen.



Gestion de la mémoire Exercice 1 :

Lorsqu'un processus demande à être chargé en mémoire le système tente d'allouer à chaque segment de l'espace logique du processus



Diapositive 1

15 déc. 2016 Gestionnaire de la mémoire :Entité ... Considérons un système de gestion de mémoire à ... Le système d'exploitation sélectionne un cadre.



[PDF] TD n°6 : Gestion de la mémoire CORRECTION - MIAGE de Nantes

TD n°6 : Gestion de la mémoire CORRECTION Exercice 1 – Notions de cours 1) cf cours 2) fragmentation interne ? système paginés fragmentation externe 



[PDF] Systèmes dexploitation INF3600 Exercices + Corrigés Gestion des

Exercices + Corrigés Gestion des processus Exercice 1 : 1) Quel est le rôle d'un système d'exploitation ? Exercice 3 : ordonnancement des processus



[PDF] Gestion de la MC– Exercices corrigés - Google Groups

Exercice 1 : -Soit un système ayant 4 cases mémoire la taille d'une page = 100 - Un Programme P fait successivement référence aux adresses suivantes : 100 



[PDF] Gestion de la mémoire

Exercice 2 Dans un système de gestion mémoire à partitions variables on constate que la liste des "trous" est la suivante (dans l'ordre des adresses 



[PDF] TD Gestion de la Mémoire Centrale/virtuelle Exercice de

Justifiez sans dérouler l'algorithme optimal Exercice 4: (examen 06/2009) 1) Un système d'exploitation fournit aux processus un espace d'adressage virtuel de 



[PDF] Gestion de la mémoire Exercice 1 :

Lorsqu'un processus demande à être chargé en mémoire le système tente d'allouer à chaque segment de l'espace logique du processus une zone contiguë en mémoire 





gestion memoire Examens Corriges PDF

Exercices d'entrainement corrigés 1 Gestion Mémoire On considère un système de pagination à deux niveaux : ? les adresses (virtuelles et physiques) sont 



[PDF] TD4 mémoire

L2 Systèmes Exploitation Exercice I TD4 mémoire Un système de va-et-vient élimine la fragmentation externe grâce au compactage



[PDF] Gestion de la mémoire

Cours syst`emes d'exploitation p 1 Gestion de la mémoire Allocation contiguë Exercice 1 Étant donné des partitions mémoire de 100k 500k 200k 300k 

:

Systèmes d'Exploitations Avancés

Chapitre VI :

Gestion de la mémoire

Amine DHRAIEF

Mastère professionnel en Modélisation, Bases de

Données et Intégration des Systèmes

ESEN, Univ. Manouba

12/15/162Introduction

Les programmes s'accroissent pour

remplir la mémoire disponible qui leur est réservée

12/15/163Introduction

•Souhaits des programmeurs -Une mémoire infiniment grande -Une mémoire infiniment rapide -Non volatile -Bon marché ! -Frein technologique → hiérarchie de la mémoire •hiérarchie de la mémoire -Quelques MB de mémoire cache volatile, rapide et chère -Quelques GB de mémoire rapidité moyenne, prix moyen -Quelques TB de mémoire non volatile, lente, mémoire de masse

12/15/164Introduction

•Gestionnaire de la mémoire :Entité du S.E qui gère hiérarchie de la mémoire -Garde trace de la partie de la mémoire qui est en cours d'utilisation et celle qui ne l'est pas -Allouer de la mémoire au processus -Libérer la mémoire à la fin de l'exécution des processus

12/15/165Abstraction de la mémoire ?

•Avant 1980: on ne disposait pas d'abstraction -MOV REGISTER1, 1000 - on fait passer le contenu de l'emplacement mémoire 1000 dans le registre REGISTER1 -Il n'était pas possible d'exécuter deux programmes en même temps •Le modèle de mémoire présenté au programmeur correspondait tout simplement à la mémoire physique -Un ensemble d'adresse numérotées de 0 à une valeur maximale -Chaque adresse désignant une cellule contenant un certain nombre de bit (8 bits)

12/15/166Abstraction de la mémoire ?

•Même si le modèle ne reflète que la mémoire physique, il peut exister plusieurs variantes -(a) S.E en bas de la mémoire vive RAM (n'est plus utilisé) -(b) S.E en haut de la ROM (système embarqué) -(c) gestionnaire des périphérique en haut de la ROM (BIOS), S.E en RAM (MSDOS) •Le modèle (c) représente un inconvénient majeur: un bogue dans un programme utilisateur peut engendrer des conséquences désastreuse sur le S.E.

12/15/167Abstraction de la mémoire ?

•Un seul processeur peut s'exécuter à la fois. Dès que l'utilisateur tape une commande -Le S.E copie le programme demandé depuis le disque vers la mémoire et l'exécute -Lorsque le processus se termine, le S.E affiche le prompt et attend une nouvelle commande -Quand il reçoit la commande, il charge un nouveau programme en mémoire en écrasant le précédent

12/15/168L'exécution de plusieurs programmes

sans abstraction de mémoire •Même sans abstraction de la mémoire, il est cependant possible d'exécuter quasi simultanément plusieurs programmes. •Le S.E. doit alors recopier sur disque l'intégralité du contenu de la mémoire avant de charger et d'exécuter le programme suivant •C'est le va-et-vient ou swapping

12/15/169UNE ABSTRACTION DE LA MÉMOIRE:

LE ESPACES D'ADRESSAGE

12/15/1610Contexte

•Faire voire aux processus la mémoire physique présente plusieurs inconvénients -Risque de plantage générale, même avec un seul programme qui s'exécute -Lourdeur pour exécuter plusieurs programmes à la fois •Besoin d'abstraction de la mémoire

12/15/1611La notion d'espace d'adressage

•De la même façon qu'un processus crée une

UC abstraite exécutant un programme, l'espace

d'adressage est une sorte de mémoire abstraite d'un programme prêt à l'exécution •C'est l'ensemble des adresses qu'un processus peut utiliser pour adresser la mémoire •Chaque processus a son propre espace d'adressage, indépendant de celui des autres

12/15/1612La notion d'espace d'adressage

•Il est difficile de donner à chaque programme son propre espace d'adressage -C'est-à-dire de faire en sorte que l'adresse (abc) de l'un correspond à un emplacement différent de l'adresse (abc) de l'autre •Solution: ré-allocation dynamique

12/15/1613La notion d'espace d'adressage

12/15/1614Les registres de base et de limite

•Ré-allocation dynamique: mapper l'espace d'adressage de chaque processus sur une partie différente de la mémoire physique. •Équiper les UC de deux registres matériels: les registres de base et de limite. -Les programmes sont chargés en mémoire sans ré-allocation, là où il y a de la place pour les ranger dans des mots mémoire consécutifs

12/15/1615Les registres de base et de limite

•À l'exécution du programme, le S.E range dans le registre de base l'adresse physique de début de programme et dans le registre de limite et celle de fin -Les valeurs de base et de limite du premier programme sont de 0 et 16384 (16Ko x 1024 = 16384) -Du second programme 16384 et 32768

12/15/1616Les registres de base et de limite

•Chaque fois qu'un processus référence la mémoire, -que ce soit pour charger une instruction ou bien lire ou écrire une donnée, -le matériel de l'UC ajoute automatiquement à l'adresse engendrée par le programme la valeur du registre de base -et vérifie la nouvelle adresse ainsi créée reste bien inférieur ou égale à la valeur du registre de limite

12/15/1617Les registres de base et de limite

•Dans le cas de la première instruction du second programme exécute une instruction -JMP 10 •Le matériel la traite comme si c'était -JMP 16394 -16394 = 16384 +10 •L'inconvénient majeur de cette méthode est qu'elle exige une addition et une comparaison à chaque référence mémoire

12/15/1618Le va-et-vient (swapping)

•Si la mémoire physique de l'ordinateur est suffisamment grande pour contenir tous les processus, les méthodes vues jusqu'ici conviennent. -En pratique, c'est rarement le cas -Sur les S.E. actuelles, entre 40 et 60 processus sont lancés au démarrage -Sous windows, un processus de vérification de mise à jour d'une application, lancée au démarrage occupe entre 5 et 10 Mo! -Firefox peut occuper facilement 270Mo de mémoire

12/15/1619Le va-et-vient (swapping)

•Deux approches de gestion de mémoire peuvent être utilisées -Le swapping: considérer chaque processus dans son intégralité, exécution puis placement sur le disque -La mémoire virtuelle: permet au programmes de s'exécuter même quand ils sont partiellement en mémoire principale

12/15/1620Le va-et-vient (swapping)

•L'allocation de la mémoire change au gré des processus qui viennent en mémoire et ceux qui quittent la mémoire •Les zones grises indiquent la mémoire non utilisée

12/15/1621Le va-et-vient (swapping)

i.(a) A est en mémoire ii.(b,c) B et C sont crées ou chargés depuis le disque iii.(d) A est transférer sur le disque iv.(e,f) D arrive, tandis que

B s'en va

v.(g) A revient

12/15/1622Le va-et-vient (swapping)

•Lorsque le swapping crée de multiples trous dans la mémoire, il est possible de tous les recombiner en une seule zone plus grande en déplaçant tous les processus vers le bas de la mémoire aussi vite que possible -Compactage de mémoire •N'est pas mise en oeuvre car elle requiert

énormément de temps UC

-5s pour compacter 1 Go!

12/15/1623Le va-et-vient (swapping)

•Si des processus sont crées avec une taille fixe qui ne change jamais, l'allocation est alors simple: le système alloue exactement la mémoire nécessaire pas plus pas moins ! •Lorsque les segments de données des processus doivent croître (allocation dynamique de la mémoire) un problème surgit toutes les fois qu'un processus essaie de s'accroître. -Si un trou est adjacent au processus, ce trou peut lui être alloué et le processus est autorisé à s'étendre dedans

12/15/1624Le va-et-vient (swapping)

•Si le processus est adjacent à un autre processus, le processus croissant devra être déplacé dans un trou suffisamment grand pour lui •Si un processus ne peut pas croître en mémoire et que la zone de va-et-vient sur le disque est pleine, le processus devra attendre ou être tué -Il est conseillé d'allouer un 'peu' de mémoire supplémentaire chaque fois qu'un processus est chargé ou déplacé -Si on transfert le processus sur le disque, seule la mémoire véritablement utilisé qui doit être recopiée, inutile de recopier la mémoire supplémentaire.

12/15/1625Gérer la mémoire libre

•Quand la mémoire est attribué dynamiquement, le système d'exploitation doit la gérer •Il existe deux manière de conserver une trace de l'utilisation de la mémoire -À l'aide des tables bits -À l'aide des listes

12/15/1626Gérer la mémoire avec une table de

bits •Avec une table de bits, la mémoire est répartie en unités d'allocation dont la taille peut varier de quelques mots à plusieurs kilo-octets. •Chaque unité d'allocation correspond à un bit du tableau de bits, lequel est 0 si l'unit correspondante est vide et 1 si elle est occupée (ou vice versa)

12/15/1627Gérer la mémoire avec une table de

bits

a)Une partie de la mémoire avec 5 processus, 3 trousLes petites marques verticales indiquent les unités d'allocationLes zones grises sont libres

b)Le tableau de bits correspondant c)Mêmes informations sous la forme d'une liste chaînée

12/15/1628Gérer la mémoire avec une table de

bits •La taille de l'unité d'allocation est un élément fondamentale dans la configuration: -plus l'unité est petite, plus le tableau de bit est important •Avec une unité de 4 octets (32bits), n'auront besoin que de 1 bit du tableau de bit -Une mémoire de 32n bits utilisera une table de n bits qui ne prendra pas plus de 1/33 de la mémoire

12/15/1629Gérer la mémoire avec une table de

bits •Le tableau de bit offre un moyen simple de garder une trace des mots mémoire dans une quantité fixe de mémoire •Le tableau offre un inconvénient: -lorsqu'un processus de k unités est chargé en mémoire, le gestionnaire de mémoire doit parcourir le tableau de bits pour trouver une séquence de k bit consécutifs dont la valeur est 0.

12/15/1630Gérer la mémoire avec des listes

chaînées•Une des manière de conserver une trace de la mémoire est de maintenir une liste chaînée des segments de mémoire alloués et libres -Dans cette liste, un segment est soit un processus, soit un trou entre deux processus -La liste est trié par adresse, donc si un processus se termine la mise à jour est directe

12/15/1631Gérer la mémoire avec des listes

chaînées •Un processus qui se termine a normalement deux voisins (excepté en début de liste/fin de liste) qui peuvent être des processus ou des trous, ce qui conduit à quatre combinaison possibles

12/15/1632Gérer la mémoire avec des listes chaînées

•(a) la mise à jours de la liste oblige à remplacer un P par un T •(b,c) deux unités sont réunies en une seule, la liste devient plus courte d'une unité •(d) trois entrées sont fusionnées et deux items sont retirés de la liste •→ Il y a avantage a utiliser une liste de segments doublement chaînée afin de faciliter la recherche du noeud précédent.

12/15/1633Gérer la mémoire avec des listes

chaînées •Quand les processus et les trous sont indiqué dans une liste triées par adresse, plusieurs algorithmes peuvent servir à allouer de la mémoire à un processus nouvellement créé (ou un processus existant chargé depuis le disque) -First fit -Next fit -Best fist -Worst fit -Quick fit

12/15/1634Gérer la mémoire avec des listes chaînées

First Fit

•Algorithme de la première zone libre: -On trouve le premier trou suffisamment grand pour contenir le processus. -Le trou est ensuite divisé en deux parties: une pour le processus et l'autre pour la mémoire inutilisée •Algorithme rapide parce qu'il limite ses recherches autant que possible

12/15/1635Gérer la mémoire avec des listes chaînées

Next Fit

•Algorithme de la première zone libre suivante -Identique à l'algorithme précédent sauf que la recherche commence au dernier espace libre trouvé. -Les performance sont légèrement meilleures

12/15/1636Gérer la mémoire avec des listes chaînées

Best Fit

•Algorithme du meilleur ajustement -Parcourt toute la liste et recherche le plus petit trou pouvant contenir le processus. -Évite de partitionner inutilement les gros trous -Cet algorithme crée des trous minuscules inutilisables par la suite -Plus lent que les algorithmes précédents

12/15/1637Gérer la mémoire avec des listes chaînées

Worst Fit

•Algorithme du plus grand résidu -On prend le plus grand trou disponible -Le trou restant est assez grand pour être réutilisé -Des simulations démontrent que cette solution n'est pas meilleure que la précédente.

12/15/1638Gérer la mémoire avec des listes

chaînées •On peut utiliser deux listes distinctes (zones libres et occupées par un processus) •Accélère les algorithmes précédents -Si la liste des trous est triée par taille alors best-fit et first-fit sont essentiellement équivalents. •Ralentissement quand la mémoire est libérée -Un segment libéré est enlevé de la liste des processus et inséré dans la liste des trous •On peut utiliser les zones libres elle même pour la liste des zones libres

12/15/1639Gérer la mémoire avec des listes chaînées

Quick Fit

•Algorithme du placement rapide (quick fit) -On gère des listes séparées pour certaines des tailles les plus communes -Par exemple, on peut avoir des listes de 4Ko, 8Ko, 12Ko, etc. -Très rapide. -Rend plus complexe le processus de libération de la mémoire: On doit chercher les trous adjacents pour une vérifier si une fusion est possible. •Tous ces algorithmes souffrent du problème de la fragmentation de la mémoire.

12/15/1640Application #1

12/15/1641Application #1

Considérons un système de gestion de mémoire à partitions variables avec la liste des trous suivante (ordonnée par adresses croissantes) : 10K, 4K, 20K,

18K, 7K, 9K, 12K et 15K.

Supposons les demandes successives d'espace

mémoire :A= 12K, B= 10K et C= 9K. Indiquer pour les stratégies First Fit, Next Fit, Best Fit et Worst Fit l'état de cette liste après l'allocation des espaces pour les demandes de A, B et C.

12/15/1642Solution Application #1

First fit : on cherche le premier espace

qui convient @Lg a10k b4k c20k d18k e7k f9k g12k h15k@Lg a10k b4k c8k d18k e7k f9k g12k h15k@Lg b4k c8k d18k e7k f9k g12k h15k@Lg b4k c8k d9k e7k f9k g12k h15k A 12kB 10kC 9k

12/15/1643Solution Application #1

Next Fit : on cherche l'espace suivant

qui convient @Lg a10k b4k c20k d18k e7k f9k g12k h15k@Lg a10k b4k c20k d6k e7k f9k g12k h15k@Lg a10k b4k c10k d6k e7k f9k g12k h15k@Lg a10kquotesdbs_dbs7.pdfusesText_13
[PDF] systeme dexploitation exercices corrigés gestion des processus

[PDF] examen systeme dexploitation corrigé linux

[PDF] exercices corrigés système dexploitation linux

[PDF] exercice système dexploitation gestion des processus

[PDF] exercice système dexploitation windows

[PDF] examen fin détudes secondaires luxembourg 2016

[PDF] examen fin détudes secondaires luxembourg 2017

[PDF] devoir maths 4ème nombres relatifs

[PDF] tp stomates poireau

[PDF] tp stomates corrigé

[PDF] ds tectonique des plaques 4ème

[PDF] exercices corrigés sur le cycle du carbone

[PDF] au revoir malabar correction

[PDF] corrigé brevet 2017 sciences

[PDF] sujet brevet anne frank