Gestion de la mémoire
Allocation d'espace pour l'accroissement de la pile et d'un segment de données. Modèle de mémoire fusionné (mélange de pagination et segmentation).
Systèmes dExploitation - Gestion de la mémoire
contigüe. Monoprogrammation. Multiprogrammation. Pagination. Segmentation. Systèmes d'Exploitation. Gestion de la mémoire. Didier Verna didier@lrde.epita.fr.
Module 7 Gestion de la mémoire
Partitions dynamiques: fragmentation externe qui conduit au besoin de compression. ?. Segmentation sans pagination: pas de fragmentation interne mais
Smart card introduction
La segmentation est visible au programmeur mais la pagination ne l'est pas. • Le segment est une unité logique de protection et partage tandis que la page ne l
Chapitre 4
Programmation du Noyau Linux. Olivier Dalle. Mémoire. Translation d'adresses. Unité de Segmentation. Unité de Pagination. Programme. Adresse Logique.
La gestion de la mémoire
segmentation de l'espace d'adressage des programmes pour les raisons suivantes La pagination consiste à diviser la mémoire et les processus en blocs de ...
Gestion de la mémoire
En combinant segmentation et pagination. MULTICS combine les avantages des deux techniques en s'affranchissant des principaux défauts qu'ils ont : fragmentation
La gestion de la mémoire
? la segmentation : les programmes sont découpés en parcelles ayant des longueurs variables appelées. «segments». ? la pagination : elle consiste à diviser la
1. Segmentation 2. Pagination
Segmentation. On considère la table des segments suivante pour un processus P1 : Index Base Limite Calculez les adresses physiques correspondant aux
Page Segmentation using Visual Adjacency Analysis - arXivorg
Page segmentation is a web page analysis process that divides a page into cohesive segments such as sidebars headers and footers Current page segmentation approaches use either the DOM textual content or rendering style information of the page However these approaches have a number of drawbacks such as a large number of
Page Segmentation Using Convolutional Neural Network and - Spr
Paging Segmentation Page size Page size is de?ned by the hardware Often of the form 2n between 512 bytes and 16 MB typically 4-8 KB page number page offset p d m ?n n Must be carefully chosen: too large means more internal fragmentation too small means too much overhead in paging management and processing
W4118: segmentation and paging - Department of Computer
Implementation of page table Page table is stored in memory Page table base register (PTBR) points to the base of page table • x86: cr3 OS stores base in process control block (PCB) OS switches PTBR on each context switch Problem: each data/instruction access requires two memory accesses Extra memory access for page table 21
What is page segmentation?
It is aimed at segmenting the entire document images into small regions with homogeneous contents and high level semantics such as paragraphs, titles, lists, tables and figures. Page segmentation is a prerequisite for many following applications such as text line transcription, table structure analysis and figure classification, etc.
How effective is page segmentation using convolutional neural network and graphical model?
In this paper, we propose an effective method for page segmentation using convolutional neural network (CNN) and graphical model, where the CNN is powerful for extracting visual features and the graphical model explores the relationship (spatial context) between visual primitives and regions.
What are the advantages of paging a segment?
Given to segmentation unit Linear address given to paging unit Check: permissions Segment sharing Easier to relocate segment than entire program Avoids allocating unused memory Flexible protection Efficient translation Segments have variable lengths how to fit? Eliminate fragmentation due to large segments
What are the principles of segmentation?
Segmentation A. Divide an object into independent parts. B. Make an object easy to disassemble. C. Increase the degree of fragmentation or segmentation. Principle 2. Taking out A. Separate an interfering part or property from an object, or single out the only necessary part. Principle 3.
Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
Multiprogrammation
Pagination
SegmentationSystèmes d"Exploitation
Gestion de la mémoire
Didier Verna
didier@lrde.epita.fr http://www.lrde.epita.fr/˜didier 1/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
Multiprogrammation
Pagination
SegmentationTable des matières
1Généralités2Allocation contigüeMonoprogrammation
Multiprogrammation
3Pagination4Segmentation2/24
Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
Multiprogrammation
Pagination
SegmentationLiaison d"adresse
Problème
IAdresses symboliques=)adresses physiques
IÀ quel moment fabriquer une adresse physique?Solutions ICompilation :" 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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
Multiprogrammation
Pagination
SegmentationTechniques de haut niveau
Recouvrements :(overlays) charger un processus partranches 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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationMonoprogrammation
Mainframes, Palm et systèmes embarqués, MS-DOSRAMRAMRAM RAM
ROM ROM
RAMUser Program
User Program
Operating SystemOperating System
Operating SystemDevice Drivers
0xFF..
0x00(BIOS)
8/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationMultiprogrammation & partitions fixes
" OS/MFT » sur OS/360Operating SystemPartition 1Partition 2Partition 3Partition 4Operating System
Partition 1Partition 2Partition 3Partition 4
9/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationLocalisation et protection
Modification du code :(OS/MFT, édition de liens) nécessite de connaître les mots à modifier. Ne résoudpas 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 physiqueDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationMultiprogrammation & partitions dynamiquesPrincipe
IUne partition mémoire par processus
IAllocation / libération de la mémoire en fonction de l"ordonnancementIIdem 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 zonesAvantages : 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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationPolitiques d"allocations
First-Fit :premier trou suffisant. Rapide.Next-Fit :idem, mais recherche à partir del"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"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammationMultiprogrammation
Pagination
SegmentationFragmentation
Apparition de zones inoccupées dans la mémoireTypes IFragmentation 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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
MultiprogrammationPagination
SegmentationMMUpour la paginationpdmémoiref d
table de pagesadresse logiqueUCadresse
physique16/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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 facileTaille moyenne des pages : 2 - 4 Ko
17/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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 duMMU(Architectures RISC : Sparc, MIPS, Alpha).
Acceptable pour des TLBassez grands (64 entrées).Simplifie le MMU.18/24
Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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 4Mo 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 ISPARC: 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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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 ISegment = 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 paginationIAdresse logique: nom du segment + déplacement
ISegmentation et pagination combinée22/24
Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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 LimitOther fieldsDescriptor
+RingG/L DTIndex113 2Offset32
32 bits linear address
23/24Systèmes
d"ExploitationDidier Verna
EPITAGénéralités
Allocation
contigüeMonoprogrammation
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. 2103Syscalls
DLLsUserland
Kernel
24/24quotesdbs_dbs12.pdfusesText_18
[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
[PDF] sommaire paginé rapport de stage
[PDF] grammaire grec moderne pdf