[PDF] [PDF] Systèmes dExploitation - Gestion de la mémoire - LRDE - Epita

Systèmes d'Exploitation Didier Verna EPITA Généralités Allocation contigüe Monoprogrammation Multiprogrammation Pagination Segmentation Systèmes  



Previous PDF Next PDF





[PDF] Gestion de la mémoire

Syst`emes d'exploitation - Mırian Halfeld-Ferrari – p 1/71 Système de gestion de la mémoire (Memory manager): partie du SE qui gère la hiérarchie de seulement du comportement de la pagination pour ce processus, mais aussi du 



[PDF] Systèmes dExploitation - Gestion de la mémoire - LRDE - Epita

Systèmes d'Exploitation Didier Verna EPITA Généralités Allocation contigüe Monoprogrammation Multiprogrammation Pagination Segmentation Systèmes  



[PDF] Systèmes dexploitation

12 5 6 Pagination Pour réaliser une mémoire virtuelle, il faut avoir suffisamment de mémoire secondaire (disque) pour y stocker le programme tout entier et ses 



[PDF] Systèmes dExploitation - ENSIN6U3 - Gestion de la - Academie pro

Systèmes d'Exploitation - ENSIN6U3 Allocation non-contiguë : la pagination Pour limiter les E/S, le système sauvegarde uniquement les zones de la



[PDF] Mémoire vive : pagination et segmentation Organisation de la

l'une est destinée au syst`eme d'exploitation et contient ▷ une pile d'interruption syst`eme, Mémoire virtuelle Pagination : une abstraction au niveau matériel



[PDF] La gestion de la mémoire - Cours Tech Info

Le gestionnaire de mémoire est un sous-ensemble du système d'exploitation La pagination consiste à diviser la mémoire et les processus en blocs de 



[PDF] Gestion de la mémoire

Le gestionnaire de mémoire est un sous-ensemble du système d'exploitation Son rôle est de Monoprogrammation sans va-et-vient ni pagination L' approche 



[PDF] LA GESTION DE LA MEMOIRE - Technologue pro

Systèmes d'exploitation – Gestion de la mémoire Gestion sans recouvrement ni pagination Gestion avec recouvrement, avec pagination ou segmentation

[PDF] telecharger un livre de grammaire pdf

[PDF] larousse conjugaison pdf

[PDF] telecharger larousse difficultés grammaticales pdf

[PDF] larousse grammaire francais

[PDF] larousse orthographe pdf

[PDF] larousse livre de bord orthographe pdf

[PDF] telecharger livre larousse grammaire gratuit pdf

[PDF] introduction grammaire generative

[PDF] chomsky théorie

[PDF] chomsky linguistique pdf

[PDF] aspects de la théorie syntaxique pdf

[PDF] grammaire grecque ancien

[PDF] sommaire paginé word

[PDF] sommaire paginé rapport de stage

[PDF] grammaire grec moderne pdf

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

Pagination

SegmentationSystèmes d"Exploitation

Gestion de la mémoire

Didier Verna

didier@lrde.epita.fr http://www.lrde.epita.fr/˜didier 1/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

Pagination

SegmentationTable des matières

1Généralités2Allocation contigüeMonoprogrammation

Multiprogrammation

3Pagination4Segmentation2/24

Systèmes

d"Exploitation

Didier Verna

EPITAGénéralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

Pagination

SegmentationNiveaux d"adressage

Adresse symbolique: manipulée au niveau du

programmeAdresse logique: générée par le CPUAdresse physique: emplacement mémoire réelMMU(Memory Management Unit) : dispositif de liaison

d"adresse 4/24

Systèmes

d"Exploitation

Didier Verna

EPITAGénéralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

Pagination

SegmentationLiaison d"adresse

Problème

I

Adresses symboliques=)adresses physiques

IÀ quel moment fabriquer une adresse physique?Solutions I

Compilation :" Code absolu »

Adresse de chargement connue.

Exemple :command.com.I

Chargement :" Code translatable »

Adressage relatif.I

Exécution :" Code dynamique »

L"emplacement du programme peut varier dans le

temps. Nécessite un matériel spécial. 5/24

Systèmes

d"Exploitation

Didier Verna

EPITAGénéralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

Pagination

SegmentationTechniques de haut niveau

Recouvrements :(overlays) charger un processus par

tranches de code indépendantes. Niveau utilisateur.Chargement dynamique :charger le code nécessaire

uniquement quand on en a besoin. Niveau utilisateur.Édition de liens dynamique :bibliothèques partagées.Swapping: déplacement de processus entre mémoire et mémoire auxiliaire (disques). Coûteux en commutation. 6/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüeMonoprogrammation

Multiprogrammation

Pagination

SegmentationMonoprogrammation

Mainframes, Palm et systèmes embarqués, MS-DOSRAM

RAMRAM RAM

ROM ROM

RAM

User Program

User Program

Operating SystemOperating System

Operating SystemDevice Drivers

0xFF..

0x00(BIOS)

8/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

MonoprogrammationMultiprogrammation

Pagination

SegmentationMultiprogrammation & partitions fixes

" OS/MFT » sur OS/360Operating SystemPartition 1Partition 2Partition 3Partition 4

Operating System

Partition 1Partition 2Partition 3Partition 4

9/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

MonoprogrammationMultiprogrammation

Pagination

SegmentationLocalisation et protection

Modification du code :(OS/MFT, édition de liens) nécessite de connaître les mots à modifier. Ne résoud

pas le problème de protection.=)Blocs de 2kB protégés par un code de 4 bits (PSW).Par MMU:(CDC 6600, Intel 8088)adresse

logiqueadresse physiqueSystèmes d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

MonoprogrammationMultiprogrammation

Pagination

SegmentationMultiprogrammation & partitions dynamiques

Principe

I

Une partition mémoire par processus

IAllocation / libération de la mémoire en fonction de l"ordonnancement

IIdem pour le swappingImplémentations

I Bitmap :1 bit par zone mémoire (kB) indiquant si la zone est libre ou occupée. Attention à la taille des zones

Avantages : simple, taille du bitmap connue

Inconvénients : lentI

Listes chaînées :zone libre / occupée, adresse de début et longueur. Tri par adresse, taille, listes distinctes de processus, trous. Listes doublement chaînées. 11/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

MonoprogrammationMultiprogrammation

Pagination

SegmentationPolitiques d"allocations

First-Fit :premier trou suffisant. Rapide.Next-Fit :idem, mais recherche à partir de

l"emplacement précédent. Un peu moins bon.Best-Fit :trou le plus petit possible. Moins performant.Worst-Fit :trou le plus grand. Bof.Quick-Fit :maintient de listes par tailles fréquentes.

Rapide pour la recherche, lent pour la désallocation.Remarque :attention aux politiques de tri des listes.12/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

MonoprogrammationMultiprogrammation

Pagination

SegmentationFragmentation

Apparition de zones inoccupées dans la mémoireTypes I

Fragmentation externe: espace suffisant pour

l"allocation d"un nouveau processus, mais non contiguI Fragmentation interne: allocation volontaire de zones inoccupées pour diminuer le travail de gestion de la mémoireCompactage I Défragmentation de la mémoire par translation des processus (code dynamique) IStratégies de compactage difficiles à trouver, lenteur13/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationPagination

Allocation de zones de mémoire non contigües pour un même processusCadres de page: mémoire physique découpée en

zones de taille fixeAdresse logique: numéro de page + déplacement dans la pageTable de pages: liaison entre numéro de page et cadre de page (une table par processus)Taille des pages: puissance de 2 15/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationMMUpour la paginationpdmémoiref d

table de pagesadresse logique

UCadresse

physique16/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationCaractéristiques

Pas de fragmentation externe, mais fragmentation

internePetites pages=)moins de fragmentationGrandes pages=)commutation moins coûteuseImpossible par définition d"accéder à une page interdite

Mécanismes de contrôle : pages (in)valides, en lecture, écriture, exécutionetc.Implémentation du partage de la mémoire plus facile

Taille moyenne des pages : 2 - 4 Ko

17/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationSupport matériel

La pagination doit être rapide (ns)Registres dédiés :possible seulement pour des petites tables (ex. DEC PDP-11 : adresse 16 bits, pages de 8ko=)8 entrées).Mémoire principale :un unique registre " PTBR » (Page Table Base Register). Surcharge de commutation de contexte faible, mais temps d"accès double.Registres associatifs :" TLB» (Translation Look-Aside Buffers). Fonctionne comme un cache de la table de pages (ex. Motorola 68030 : TLBà 22 entrées, i486 : 32 entrées, taux de présence de 98%).I Gestion logicielle des TLB:par le système au lieu du

MMU(Architectures RISC : Sparc, MIPS, Alpha).

Acceptable pour des TLBassez grands (64 entrées).

Simplifie le MMU.18/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationPagination à plusieurs niveaux

Exemple (courant) : adressage sur 32 bits + pages de 4 Ko. Une table de page contient alors 1 million d"entrées, soit 4

Mo de mémoire!!À éviter

I allouer autant d"espace en contigu Icharger l"intégralité des tables de page en mémoirePagination de la table de page I

SPARC: pagination 32 bits à trois niveaux

IMotorola 68030: pagination à quatre niveauxProblème: trois ou quatre indirections à chaque fois

que l"on doit récupérer un octet. 19/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

MultiprogrammationPagination

SegmentationTable de pages inversée

Autre solution au problème de la taille des tables de pagesPrincipe I Une unique table de pages pour tout le système, indexée par les cadres de page IChaque entrée contient un numéro de processus et un numéro de page virtuelleProblèmes I Liaison d"adresse plus compliquée (parcours de la table).=)TLB, tables de hash par adresse virtuelle. IPartage de pages plus difficile à implémenter au niveau système.Utilisation actuelle: IBM, HP, de plus en plus d"architectures 64 bits. 20/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

PaginationSegmentationSegmentation

Segmentationvs.Pagination

I Pagination :obtenir un espace d"adresselinéaireaussi grand que souhaité.=)Dimension 1 ISegmentation :obtenirplusieursespaces d"adressage distincts (segments).=)Dimension 2 (ex. compilateur + pile, source, table de symboles, ASTetc.)Principe I

Segment = unitélogique(niveau utilisateur)

ITaille variable, mais indépendante des autres segments IFacilité de partage (ex. bibliothèques partagées) IFacilité de protection (ex. lecture, écriture. exécution)Implémentation I Table de segments :idée analogue à la pagination

IAdresse logique: nom du segment + déplacement

ISegmentation et pagination combinée22/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

PaginationSegmentationSegmentation et Pagination

Exemple : Intel Pentium16K segments de 4 Go par processus, dont : I8K segments privés (une table de descripteurs locale " LDT » par processus) I8K segments partageables (une table de descripteurs globale " GDT)Sélecteur de segment (16 bits) + offset (32 bits)=) " Adresse linéaire » (32 bits)Base Address Limit

Other fieldsDescriptor

+RingG/L DTIndex113 2

Offset32

32 bits linear address

23/24

Systèmes

d"Exploitation

Didier Verna

EPITA

Généralités

Allocation

contigüe

Monoprogrammation

Multiprogrammation

PaginationSegmentationIntel Pentium (suite)

Pagination :Pagination à 2 niveaux.

Pages de 4Ko.Directory Page Offset10 10 12Protection :

4 anneaux différents.

Progression en

profondeur par portes / guichets. 210

3Syscalls

DLLsUserland

Kernel

24/24
quotesdbs_dbs8.pdfusesText_14