• # Les pages propres

    Posté par . En réponse à la dépêche Le noyau Linux est disponible en version 3.0. Évalué à 5.

    Quand la pression mémoire est trop importante, alors les pages en statut « clean » peuvent être « enlevées » de la mémoire physique. Ce mécanisme d’éviction (memory reclaiming) va enregistrer les pages dans leur espace de stockage particulier. Cet espace, nommé backing store, c’est tout simplement le disque ou la partition d’échange (swap) de la machine.

    Je ne suis pas sur de ceci...
    Justement, si les pages sont clean, c'est que leur contenu n'a pas changé par rapport au backingstore (le disque, quoi...). Donc on peut simplement les virer de la RAM sans état d'âme.

    Le prochaine accès à une telle page provoquera un major pagefault, et le noyau va aller la rechercher depuis le disque.

    Les pages dirty, quant à elles, sont en effet ré-écrite sur le HDD.

    Les deux cas ci-dessus, c'est pour les pages qui sont créées à cause de la lecture d'un fichier. Par contre, les pages qui n'ont pas de correspondance avec un fichier, comme les pages obtenues avec un malloc(), sont en effet envoyées dans le swap.

    Maintenant, il est aussi possible d'utiliser le swap pour stocker des pages qui sont clean, si le swap est plus rapide que le disque d'où vient la page, ou si elle vient du réseau.

    Bon, je vais finir la lecture...

    Hop,
    Moi.