Décalage de page expliqué : fondamentaux gestion mémoire
Qu'est-ce qu'un décalage de page ?
En gestion mémoire informatique, un décalage de page (ou déplacement de page) spécifie la distance — mesurée en octets — depuis le début d'un cadre de page jusqu'à un octet spécifique dans cette page. C'est un concept fondamental dans les systèmes de mémoire virtuelle utilisant la pagination pour l'allocation mémoire.
Pages et cadres : La fondation
La mémoire virtuelle divise l'espace d'adressage d'un processus en pages de taille fixe (typiquement 4 Ko). La RAM physique est divisée en cadres de taille égale. L'unité de gestion mémoire (MMU) mappe les pages virtuelles vers les cadres physiques via une table des pages.
Comment fonctionnent les décalages de page
Une adresse virtuelle se divise en deux parties :
- Numéro de page (VPN) : Indexe la table des pages pour trouver le numéro de cadre physique
- Décalage de page : Identifie l'octet exact dans la page/cadre
Puisque pages et cadres ont même taille, le décalage reste inchangé pendant la traduction. Pour une page 4 Ko (212 octets), les 12 bits de poids faible d'une adresse virtuelle représentent le décalage ; les bits de poids fort représentent le numéro de page.
Exemple concret
Considérez un système 32 bits avec pages 4 Ko :
- Adresse virtuelle :
0x00401234 - Taille page : 4 Ko = 4096 octets = 212
- Bits décalage : 12 bits (0x234 = 564 octets dans la page)
- Numéro page : 0x00401 (20 bits poids fort)
Si page 0x00401 mappe vers cadre physique 0x007A2, l'adresse physique devient 0x007A2234 — même décalage, base cadre différente.
Pourquoi les décalages de page importent
- Traduction adresses : MMU combine adresse base cadre + décalage pour adresse physique
- Alignement cache : Décalages déterminent placement ligne cache
- Protection mémoire : Vérification bornes décalage empêche débordement page
- Mémoire partagée : Processus multiples peuvent mapper même cadre avec décalages différents
Autres contextes
Le terme apparaît ailleurs avec sens différents :
- Mise en page document : Distance marge page vers élément contenu
- Systèmes fichiers : Position octet dans bloc/secteur disque
- Réseau : Décalage charge utile dans paquet ou trame
Résumé
Le décalage de page relie adressage virtuel et physique en localisant données dans un cadre page taille fixe. Son invariance pendant traduction adresse rend la pagination efficace — seul numéro page nécessite recherche ; le décalage passe inchangé.
