Simple%20OS%20La%20Pagination - PowerPoint PPT Presentation

About This Presentation
Title:

Simple%20OS%20La%20Pagination

Description:

Programmer en fonction de la m moire disponible. Apr s : M moire disponible ' infinie ' 4 ... est stock e ailleurs ? OS. Transfert vers. la RAM. Signale acc s ... – PowerPoint PPT presentation

Number of Views:38
Avg rating:3.0/5.0
Slides: 17
Provided by: Ben7180
Category:

less

Transcript and Presenter's Notes

Title: Simple%20OS%20La%20Pagination


1
Simple OSLa Pagination
  • Benoit LAMOTTE

Daprès larticle Conception dOS mise en place
de la pagination,Linux magazine n65 page
42,David Decotigny Thomas Petazzoni.
2
Sommaire
  • Principe de la memoire virtuel
  • Objectifs
  • Traduction dadresses
  • Architecture x86
  • Petit rappel
  • Adresse Linéaire
  • Répertoire et table des pages
  • Identity mapping
  • Modification des tables de traduction dadresses
  • Simple OS
  • Le mirroring
  • Le fonctionnement la mise en place de la
    pagination

3
Principe de la memoire virtuelleObjectifs
  • Avant
  • Programmer en fonction de la mémoire disponible
  • Après
  • Mémoire disponible  infinie 

4
Principe de la memoire virtuelleObjectifs
  • Comment est-ce possible ?
  • Utilisation des autres ressources.
  • RAM utilisé pour stocker les données les plus
    utilisées.

5
Principe de la memoire virtuelleTraduction
dadresses
  • Prise en charge par la MMU

RAM
Bus de données
Bus de données
CPU
MMU
Adresses fictives
Adresses RAM
Exception MMU
6
Principe de la memoire virtuelleTraduction
dadresses
MMU
CPU
Adresse fictive
Accès à une donnéeChargement dun instruction
Il existe une traduction en RAM?
non
oui
Utilisation des donnéesExécution de linstruction
Bus de donnéesMémoire
Accès à la RAM
Exception
OS
Données/instructionsur le bus de données
La donnée/instructionest stockée ailleurs ?
oui
non
Transfert versla RAM
Signale accès invalide à lapplication fautive
Nouvelle traduction communiquée à la MMU
7
Architecture x86Petit Rappel
  • MMU gère la segmentation et la pagination
  • Adresse logique -gt adresse linéaire par la
    segmentation
  • Adresse linéaire -gt adresse physique par la
    pagination de la MMU

8
Architecture x86Adresse linéaire
Adresse Linéaire 0xa811800c 424MO 244KO
12
0
31
21
12
11
22
Index PDE
Index PTE
Offset
24
12
Page physique
42
PT
PD
0x84
Offset 12
0x123000 P1
PTE n 24
0x504000 P1
PDE n 42
cr3
0x40100
9
Architecture x86Répertoire et table des pages
  • Tableau de 4ko
  • 1024 entrées (PDE PTE) de 4 octets
  • Structure identique
  • Bit 31-12 adresse en RAM
  • Bit 2 0 si accessible quen mode superviseur
  • Bit 1 0 accessible en lecture seule
  • Bit 0 bit  P  indique si présent en mémoire.

10
Architecture x86Mise en place de la pagination
  1. Configuration de toutes les tables de traduction
    dadresses (PD et PT).
  2. Initialisation du registre cr3.
  3. Positionnement du Bit 31 du registre cr1 à 1.

11
Architecture x86Identity Mapping
  • Configuration particulière des tables de
    traduction dadresses.
  • Adresses physique adresse linéaire
  • Il faut ensuite modifier la pagination.

12
Architecture x86Modification des tables de
traduction dadresses
  • Simple en pratique mais attention au TLB
  • Modification du cr3
  • Utilisation de linstruction invlpg.

13
Simple OSLe mirroring
  • Permet de rendre le répertoire de pages et les
    tables des pages accessibles

PT 0
PT 1023
0x80000000
PT 1023
PT 511 PD
0x7fdff000
PT 511 PD
PT 0
0x7fc00000
14
Simple OSLe mirroring
  • On a fait PDEidxMirroraddrPD
  • Pour modifier le contenu de ième tables des pages
    il faut accéder à la page dadresse linéaire
    idxMirror4Mo ième4Ko
  • Pour modifier les entrer du répertoire des pages
    il faut accéder à la page dadresse linéaire
  • idxMirror4Mo idxMirror4Ko

15
Simple OSLe fonctionnement la mise en place de
la pagination
  1. Mise en place de lidentity mapping
  2. Mise en place du Mirroring
  3. Activation de la pagination

0x3fc00000
0x40000000
0x100000
0x200000
0xa0000
0x0
BIOS VIDEO
Kernel(initial)
Desc. Pagephysique
MIRRORING(4MO)
16
Questions ?
Write a Comment
User Comments (0)
About PowerShow.com