Traduction adresse logique-physique via MMU
Processus de traduction Unité de Gestion Mémoire (MMU)
Le matériel MMU traduit chaque adresse logique (virtuelle) générée par le CPU en adresse physique RAM.
Structures principales
- Table des pages : Tableau par processus mappant numéros de page virtuels (VPN) vers numéros de cadre physiques (PFN) + drapeaux (présent, R/W, user/supervisor, dirty, accessed).
- Tampon de traduction (TLB) : Cache petit, entièrement associatif, des mappings VPN→PFN récents pour éviter parcours table pages.
Étapes de traduction
- CPU émet adresse logique → scindée en VPN | offset page.
- MMU vérifie TLB pour VPN.
- Hit : PFN récupéré ; adresse physique = PFN + offset.
- Miss : MMU parcours table pages (via registre base/répertoire pages) pour trouver PTE.
- Si bit présent PTE = 0 → page fault → OS gère (chargement disque, swap, etc.).
- Succès : MMU charge mapping dans TLB, retourne adresse physique.
Pagination multi-niveaux
ISA modernes (x86-64, ARMv8) utilisent tables pages 4 niveaux (ou 5) ; chaque niveau indexe un répertoire. MMU les parcours séquentiellement sur miss TLB.
