2016-02-26 2 views
0

Je suis vraiment confus au sujet de ces 3 choses et j'ai essayé de comprendre cela pendant 2 bonnes heures et pas de chance.Qu'est-ce qu'une page, une page et une entrée de table de pages?

Q. Si j'ai un espace d'adressage virtuel de 47 bits avec une taille de page de 16 Ko et que l'entrée de table de page prend 8 octets. Combien de niveaux de tables de pages seraient nécessaires pour mapper l'espace d'adressage virtuel si chaque table de page est requise pour s'adapter à une seule page?

Je sais ce qu'est une table de page est, mais ce qui est exactement la différence entre une entrée de table page et la page? Dans la clé de réponse, il commence par ceci:

Une table de page d'une page contient 2^11 PTE (x8 octets), pointant sur 2^11 pages (adressant 2^25 octets). Quelqu'un peut-il m'expliquer d'où viennent les 2^11 pages? Plus ou moins, je suis confus au sujet de ce que cela signifie par une page et quelle est la différence avec une entrée de table de page.

Répondre

0

L'espace d'adressage logique dans un tableau de PAGES. Dans votre cas, une page est de 16 Ko ou 2^14 octets. La PAGE TABLE contient les mappages entre les pages et les FRWES PAGE physiques où la taille du cadre de la page est la même que celle de la page.

Votre réponse (mais pas question) indique qu'une entrée de table de page est de 8 octets (2^3). En supposant que c'est correct, vous pouvez insérer 2^14/2^3 = 2^11 entrées de table de pages dans une seule page.

Si vous avez un espace d'adressage de 2^47 bits, vous avez besoin de 2^47/2^14 = 2^33 entrées de table de page pour couvrir l'intégralité de l'espace adresse. Vous auriez besoin de 2^33/2^11 = 2^22 pages d'entrées de table de pages.

Cette question suppose l'utilisation de tables de pages imbriquées.

(2^11)^2 = 2^22

Vous devez alors deux niveaux de table de page.

Toute la question est plutôt stupide, artificielle, et ne reflète pas le monde réel. Je ne peux pas croire que les systèmes d'exploitation sont enseignés de cette manière.