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





Previous PDF Next PDF



Gestion de la mémoire

Ceux qui déplacent un processus entre le disque et la mémoire pendant sont exécution. Modèle de mémoire fusionné (mélange de pagination et segmentation).



Smart card introduction

Comme pour la pagination la segmentation utilise un numéro de segment



Systèmes dExploitation - Gestion de la mémoire

Pagination. Segmentation Swapping : déplacement de processus entre mémoire ... Impossible par définition d'accéder à une page interdite.



Méthodologie et Outils

9 févr. 2021 Page : unité mémoire transférée entre disque et mémoire principale. ... Différence entre la pagination et la segmentation. 43. Pagination.



Chapitre 4

Base = 32 bits : @linéaire du 1er octet du segment Segmentation et Pagination : des mécanismes ... Base : nieme CPU = nieme entrée de init_tss.



Chapitre 5

Chaque adresse logique est constituée d'un segment et d'un offset. Adressage linéaire Différence entre Page manipulée par l'OS et Page physique.



Gestion de la mémoire Exercice 1 :

Utilisation combinée des techniques de pagination et de segmentation : l'espace Quelle est la différence principale entre un algorithme de remplacement ...



TD n°6 : Gestion de la mémoire

2) L'adresse virtuelle (4200) est-elle valide ? Rappel. : Les adresses sont données sous la forme (n°segment:deplacement). Exercice 3 – Pagination. Dans un 



La gestion de la mémoire

7 déc. 2005 Allocation de la mémoire contiguë. Allocation non-contiguë : la pagination. Segmentation. Le partage de la mémoire entre processus. Moniteur.



CHAPITRE IV : GESTION DE LA MEMOIRE

Un aspect important de la pagination est la séparation nette entre la vue de En segmentation la conversion d'une adresse logique en une adresse physique ...

  • Overview

    In this tutorial, we’ll discuss the two most popular non-contiguous memory allocation techniques: segmented paging and paged segmentation.We’ll explore the way both methods work, their advantages and disadvantages. Finally, we’ll present the core difference between them.

  • Motivation

    The optimal use of a computer’s memory capacity has been the subject of extensive studies. With the advancement of computers, programs are also getting more complex and require more memory for execution. In any machine, we need to share memory between multiple programs. However, it can cause the processing to be slow as the CPU needs to load data i...

  • Introduction to Segmented Paging

    To reduce the size of the page table in RAM, we use a strategy that combines both segmentation and paging.But before going into the details of the combined strategy, first, let’s discuss the problems with paging. Paging allows jobs and processes to be stored as a discontinuous space in memory. Thus, it solves the problem of external fragmentation. ...

  • Introduction to Paged Segmentation

    In segmentation, we divide each process into segments.Each segment has a different size. Segments are loaded in the logical address memory space, which is a set of segments with various lengths. Each segment has a name and a length. To execute a segment, its logical address is loaded to the physical memory space. Generally, we refer to a segment by...

Quelle est la différence entre pagination et segmentation ?

Le matériel décide la taille de page. La taille du segment est spécifiée par l’utilisateur. La pagination implique une table de pages qui contient l’adresse de base de chaque page. La segmentation implique la table de segments qui contient le numéro de segment et le décalage (longueur du segment).

Quelle est la différence entre une page et un segment ?

Une page a une taille de bloc fixe. Un segment est de taille variable. La pagination peut entraîner une fragmentation interne. La segmentation peut conduire à une fragmentation externe. L’adresse spécifiée par l’utilisateur est divisée par le CPU en un numéro de page + un décalage.

Qu'est-ce que le numéro de segment et le décalage dans l'espace de mémoire physique ?

Le numéro de segment et le décalage génèrent conjointement l’adresse du segment dans l’espace de mémoire physique. QCM Architecture des ordinateurs – Partie 1 QCM en architecture des ordinateurs avec la correction pour la préparation des concours, des tests, aux examens et aux certifications.

  • Past day

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

EPITAquotesdbs_dbs44.pdfusesText_44
[PDF] conversion adresse logique adresse physique

[PDF] pagination et segmentation pdf

[PDF] pagination systeme d'exploitation

[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] 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