Table globale de descripteurs

Table globale de descripteurs

Global Descriptor Table

La Table globale de descripteurs ( GDT : Global Descriptor Table en anglais ) est une structure de données utilisée par les processeurs de la famille x86 (le premier à l'avoir utilisée est le Intel 80286) pour référencer les descripteurs de segment les plus utilisés par les processus.

C'est une partie spéciale de la mémoire principale utilisée dans le mode protégé. Dans ce mode, au contraire du mode réel, on ne peut pas accéder comme on le désire à n'importe quelle portion de la mémoire. La gestion de la mémoire en mode protégé est plus complexe, mais offre de nombreux avantages dont la protection de l'espace d'adressage de chaque programme.

En mode protégé, les adresses de segments contenues dans les registres de segments CS, DS, ES et SS ont toujours 16 bits mais ne représentent plus des endroits physiques. Les registres de segments contiennent des "sélecteurs", dont une partie sert d'indice dans GDT où se trouvent décrits les segments de la mémoire. En consultant cette table, le processeur prend connaissance de l'adresse de base du segment. Enfin l'adresse finale est déterminée en ajoutant un offset donné sous la forme d'un pointeur FAR à l'adresse trouvée.

La structure d'un sélecteur est la suivante :

  • bit 0 à 1 : RPL → Requested Privilege Level, c'est à dire le niveau de privilège du segment référencé.
  • bit 2 : TI → Task Indicator, indique si l'index est relatif à la GDT ou à une LDT (Local Descriptor Table)
  • bit 3 à 15 : INDEX → indice dans la GDT ou une LDT.


Les 8 premiers indices de la GDT sont réservés à une utilisation particulière. L'indice 0 de la GDT n'est pas utilisé.

Sommaire

Utilisation de GDT par Windows

Chargeur d'amorçage NTLDR

Le chargeur d'amorçage NTLDR fait passer le processeur du mode réel au mode protégé (voir Processus de démarrage de Windows NT#Phase de chargement au boot).

Autres chargeurs

Utilisation de GDT par linux

Sous Linux, il n'existe qu'une seul GDT par processeur. En effet, Linux n'utilisant que très peu la segmentation, les adresses linéaires correspondent aux adresses logiques et sont donc identiques pour tout les processus (systèmes ou utilisateurs).

Voir les chargeurs d"amorçage de linux :

Voir aussi

  • Portail de l’informatique Portail de l’informatique

Sources

  • Michael Tischer, Bible PC - Programmation Système. Micro Application, 1996.
  • Volume III: Intel System Programming Guide (édition relative au Pentium IV)
Ce document provient de « Global Descriptor Table ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Table globale de descripteurs de Wikipédia en français (auteurs)

Игры ⚽ Нужен реферат?

Regardez d'autres dictionnaires:

  • Global Descriptor Table — La Table globale de descripteurs ( GDT : Global Descriptor Table en anglais ) est une structure de données utilisée par les processeurs de la famille x86 (le premier à l avoir utilisée est le Intel 80286) pour référencer les descripteurs de… …   Wikipédia en Français

  • GUID Partition Table — Dans le domaine du matériel informatique, une table de partitionnement GUID, en anglais GUID Partition Table (GPT) est un standard pour décrire la table de partitionnement d un disque dur. Bien qu il fasse partie du standard EFI Extensible… …   Wikipédia en Français

  • Descripteur De Segment — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Descripteur de segment — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Segment (memoire) — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Segment (mémoire) — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Segmentation (informatique) — Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire physique (dans le cas de la… …   Wikipédia en Français

  • Selecteur de segment — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Sélecteur de segment — Segmentation (informatique) Pour les articles homonymes, voir Segmentation. En informatique, la segmentation est une technique gérée par l unité de segmentation de la MMU, utilisée sur les systèmes d exploitation modernes, qui divise la mémoire… …   Wikipédia en Français

  • Segment d'etat de tache — Segment d état de tâche Un segment d état de tâche ou Task state segment (TSS) est une structure spécifique aux processeurs de la famille x86 où est stockée tout le contexte d un processus. Son descripteur est placé dans la GDT (Table globale de… …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”