Deskriptortabeller är tjänstedatastrukturer som innehåller segmentdeskriptorer .
Det finns tre typer av deskriptortabeller i x86-arkitekturen :
Eftersom en deskriptor upptar 8 byte, och gränsen i GDTR-registret är två byte och lagrar storleken på tabellen minus en (maxvärdet för gränsen är 65535), och 8192 x 8 = 65536.
LDT- och uppgiftssegmentbeskrivningar ( TSS ) finns bara här.
En egenskap hos GDT är att den inte tillåter åtkomst till den första (med en nollförskjutning i förhållande till början av tabellen) deskriptorn . Åtkomst till den ger ett #GP- undantag , vilket förhindrar minnesåtkomst med hjälp av ett olastat segmentregister.
Till skillnad från GDT kan det finnas många LDT (beroende på antalet uppgifter (trådar), men inte nödvändigtvis). Varje uppgift kan ha sin egen. Platsen för den aktuella uppgiftstabellen indikeras av LDTR- registret .
Storleken och platsen för LDT i linjärt minne bestäms av LDT- deskriptorn för GDT (men detta betyder inte att storleken på LDT kan vara större än 65536 byte ).
Den första LDT- deskriptorn (#0) kan användas.
Avbrottstabellen är global. Platsen i det fysiska minnet bestäms av IDTR-registret .
När ett avbrott inträffar (externt, hårdvara eller orsakat av Int- instruktionen ):