-1

Sous Linux, des fonctions telles que pgd_offset, pmd_offset et pte_offset sont utilisées pour indexer les commandes pgd, pmd et pte. Qui appelle ces fonctions? La MMU utilise-t-elle ces fonctions pour parcourir les tables de pages? D'après ce que je comprends, le noyau Linux crée une table de pages pour chaque processus et transmet l'adresse de base de la table de pages au registre de base de la table de pages afin que la MMU puisse y accéder. Comment la MMU lit-elle la table des pages par la suite? Qui utilise ces fonctions pgd_offset, etc si la MMU est celle qui lit les tables de la page?Table de pages Linux

+0

Regardez [ici] (http://lxr.free-electrons.com/ident?i=pgd_offset). – Downvoter

Répondre

0

Comment la MMU lit-elle la table de pages par la suite?

La MMU utilise une méthode accélérée pour lire la mémoire. La recherche actuelle est spécifique à l'architecture: tout comme le processus d'analyse des instructions.

Qui utilise ces fonctions pgd_offset, etc si la MMU est celle qui lit les tables de pages?

Parfois, le code noyau souhaite rechercher un struct page par une adresse virtuelle. Il doit utiliser ces fonctions pour le faire (AFAIK, il n'y a pas d'API pour la recherche d'adresse MMU, donc il doit aussi être implémenté dans le noyau).