Il existe différent types de mémoire :
La mémoire virtuelle permet de créer un seul espace auquel on accède mais qui pointe vers des données stockés dans des endroits différents (disque dur, RAM, etc.). Les adresses virtuelles de cette mémoire virtuelle sont traduits en adresses physiques (adresses qui pointent vers une donnée réelle).
Puisque l'accès à une donnée demande deux accés mémoire de la part du processeur + une conversion de l'adresse virtuelle en adresse physique, les adresses utilisées le plus souvent sont stockés dans le TLB (Translation Lookaside Buffer) qui est une petite mémoire contenant, sous forme de couples, les adresses virtuelles et l'adresse physique associée.
Adresse virtuelle | Adresse physique |
---|---|
@virtuelle 1 | @physique 1 |
... | ... |
Fonctionnement d'accés à la mémoire virtuelle
@virt @physique +-----+ +------------+ +-------+ Miss +----+ | |--------->| Traduction |----------->| |--------->| | | CPU | +------------+ | Cache | | MC | | |<--+ | |<---+ | | +-----+ | +---+---+ | +--+-+ | | | | | Hit | | | | | | | -------------------------------------<--------+--------+