GDT

Versiunea actuală a paginii nu a fost încă revizuită de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită pe 14 aprilie 2017; verificările necesită 2 modificări .

GDT ( English  Global Descriptor Table , tabel global al descriptorilor) este o structură de date de serviciu în arhitectura x86 care definește segmente globale (comune pentru toate sarcinile) . Locația și dimensiunea memoriei sale fizice sunt determinate de registrul sistemului GDTR .

Descriptori LDT și segment de activitate ( TSS ) pot fi găsiți doar aici.

O caracteristică a GDT-ului este că nu permite accesul la primul (adică, zero) descriptor . Accesarea acestuia generează o excepție #GP , care împiedică accesul la memorie folosind un registru de segment neîncărcat.

GDTR

GDTR ( Registrul tabelului global de descrieri în engleză - Registrul  tabelului global de descriptori )  este un registru special de 48 de biți care descrie locația și dimensiunea tabelului care conține descriptori . A apărut împreună cu mecanismul de protecție în modelele de procesoare 80286 ca un mecanism de protecție segmentat .

Registrul conține două câmpuri: primul câmp - primii 32 de biți , descrie adresa liniară la care ar trebui să se găsească tabelul descriptor, iar ultimii 16 biți  - limita care determină dimensiunea tabelului în octeți. Fiecare descriptor ocupă 8 octeți în memorie . Prin urmare, limita trebuie calculată întotdeauna astfel: limit = 8*n - 1, unde n este numărul de descriptori .

Când sistemul de operare este inițializat , tabelul global de descriptori este de obicei creat pentru numărul complet de descriptori (limită = 65535) sau 8192 descriptori . Apoi adresa virtuală de la începutul tabelului este încărcată în registrul GDTR cu o instrucțiune specială de asamblare LGDT ( Load GDT ) : 

mov ax , GDT_Limit push ax mov eax , GDT_Base push eax mov bp , sp lgdt qword [ ss : bp ] ; stiva crește „în jos”!

După ce mecanismul de protecție este activat, sistemul de adresare selector, în locul celui de segment, începe să funcționeze și este utilizat GDT-ul.

Vezi și

Link -uri