Discussion:Global Descriptor Table

Autres discussions [liste]
  • Admissibilité
  • Neutralité
  • Droit d'auteur
  • Article de qualité
  • Bon article
  • Lumière sur
  • À faire
  • Archives
  • Commons


 "En mode protégé, les adresses qui ont toujours 16 bits ne représentent plus des endroits physiques"
  16 bits ? non 32 il me semble


16/32 ... quelques éléments de réponse :

Les sélecteurs ont une taille de 16 bits. Ces sélecteurs servent (pour 13 de leurs bits) d'indice dans la GDT afin de trouver un descripteur. Un descripteur contient (entre autre) une adresse de 32 bits sur le 80386 et suivant. Cela dépend dont de quel point de vue on se situe : selecteur ou adresse de 32 bits. La phase que j'ai mis stipulant le 16 est en effet ambigüe. La tournure de phase de la bible PC Programmation Système est elle-même ambigüe (référence m'ayant permis d'améliorer l'article).

Le but de ce système de selecteur est que d'anciens programmes peuvent toujours tourner sans modifications. En effet, CS, DS, ES et SS ont toujours 16 bits ! Mais ces registres ne référencent plus des emplacements physiques. Les segments faisant toujours 64 Ko, un vieux programme pourra toujours accéder normalement à la mémoire avec des adresses segment:offset, sans même se rendre compte de sa localisation physique en mémoire.

J'ai l'intention d'améliorer cet article dans dès que j'aurai le temps. J'ai les connaissances et la documentation (mais pas beaucoup de temps pour le faire). Toute aide serait la bienvenue.

Revenir à la page « Global Descriptor Table ».