Dans l'architecture informatique, un registre vieillissant est un mécanisme matériel utilisé dans la gestion de la mémoire, en particulier dans les systèmes de mémoire virtuelle utilisant la pagination ou la segmentation de la demande. Son objectif est de suivre la récence de l'accès aux pages ou aux segments en mémoire. Ces informations sont cruciales pour prendre des décisions éclairées sur les pages à supprimer de la mémoire principale lorsqu'elle est pleine (un défaut de page se produit).
Au lieu d’utiliser simplement un algorithme LRU (Least Récemment Utilisé), qui nécessite de suivre l’ordre exact d’accès à chaque page, un registre vieillissant offre une approximation probabiliste. Il est plus efficace à mettre en œuvre matériellement qu’un tracker LRU entièrement précis.
Voici comment cela fonctionne :
* Vecteur de bits : Chaque page ou segment est associé à un bit dans le registre de vieillissement. Ce registre est généralement un seul bit par entrée.
* Déplacement périodique : À intervalles réguliers (par exemple, à chaque cycle d'horloge ou à un multiple de celui-ci), les bits du registre de vieillissement sont décalés vers la droite. Un "1" est ajouté au bit le plus à gauche si la page correspondante a été consultée depuis le dernier décalage.
* approximation de récence : Plus les accès à une page sont récents, plus il y aura de "1" présents dans son bit de registre de vieillissement. Les pages avec plus de « 1 » en début de page sont considérées comme utilisées plus récemment.
* Remplacement de pages : Lorsqu'un défaut de page se produit, l'algorithme de remplacement de page (souvent une variante de LRU) sélectionne une page à expulser en fonction du nombre de « 1 » en tête (ou d'une autre métrique dérivée). Les pages avec moins de « 1 » en début de page (ce qui signifie qu’elles n’ont pas été consultées récemment) sont plus susceptibles d’être remplacées.
Avantages des registres vieillissants :
* Implémentation matérielle : C’est relativement simple et rapide à implémenter dans le matériel.
* Rapprochement du LRU : Il fournit une approximation raisonnable de l’algorithme LRU sans la complexité du suivi de l’ordre d’accès exact.
* Efficacité : Comparé au suivi LRU entièrement précis, il est plus efficace en termes de coût matériel et de vitesse.
Inconvénients des registres vieillissants :
* Inexactitude de l'approximation : Il n'est pas parfaitement précis de déterminer la page la plus récemment utilisée ; c'est une approche probabiliste.
* Sensibilité des paramètres : La fréquence de l'opération de décalage de bits est un paramètre qui affecte la précision et l'efficacité du registre de vieillissement. Choisir une fréquence optimale peut être difficile.
En résumé, le registre de vieillissement est un mécanisme matériel intelligent qui offre un compromis pratique entre précision et efficacité dans la gestion de la mémoire virtuelle en approchant le remplacement des pages LRU. Il s'agit d'une fonctionnalité commune à de nombreuses architectures de processeurs.
|