Interrupt Descriptor Table
De Wikipedia, l'encyclopédie encyclopedia
L'IDT (de l'anglais Interrupt Descriptor Table) est une table de données située dans la mémoire d'un ordinateur d'architecture x86, et permettant au microprocesseur de gérer les interruptions.
Cet article est une ébauche concernant l’informatique.
Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.
Cet article ne cite pas suffisamment ses sources ().
Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ».
En pratique : Quelles sources sont attendues ? Comment ajouter mes sources ?
Pour les articles homonymes, voir IDT.
Il s'agit d'un tableau comportant au maximum 256 descripteurs de 8 octets chacun, soit un descripteur par interruption. Son emplacement en mémoire est enregistré à l'intérieur du registre IDTR du processeur. Lors du déclenchement d'une interruption, le processeur lit la ligne correspondante dans l'IDT et effectue le traitement associé aux valeurs lues sur cette ligne.
Le registre IDTR est un registre de 48 bits, dont les 16 bits les plus faibles représentent la taille en octets de l'IDT, tandis que les 32 bits supérieurs représentent l'adresse physique de l'IDT en mémoire. Ce registre n'est accessible que par l'intermédiaire de deux instructions assembleur : lidt (Charge un emplacement mémoire dans l'IDTR) et sidt (Place dans un emplacement mémoire le contenu de l'IDTR).
Les 32 premières interruptions (no 0 à 31) sont réservées aux exceptions (erreurs) générées par le microprocesseur. Les 16 interruption matérielles sont généralement associées aux interruptions no 32 à 47. Néanmoins toutes les interruptions sont librement appelables par les programmes utilisateurs par le biais de l'instruction à condition que le système d'exploitation le lui permette.