Global Descriptor Table: Difference between revisions

Jump to navigation Jump to search
[unchecked revision][unchecked revision]
Content deleted Content added
m cr non-breaking spaces
Add reference to segment selector page.
Line 1: Line 1:
The '''Global Descriptor Table''' ('''GDT''') is a binary data structure specific to the [[IA32_Architecture_Family |IA-32]] and [[X86-64 |x86-64]] architectures. It contains entries telling the CPU about memory [[Segmentation|segments]]. A similar [[Interrupt Descriptor Table]] exists containing [[task]] and [[Interrupts|interrupt]] descriptors.
The '''Global Descriptor Table''' ('''GDT''') is a binary data structure specific to the [[IA32_Architecture_Family|IA-32]] and [[X86-64|x86-64]] architectures. It contains entries telling the CPU about memory [[Segmentation|segments]]. A similar [[Interrupt Descriptor Table]] exists containing [[task]] and [[Interrupts|interrupt]] descriptors.


It is recommended to read the [[GDT Tutorial]].
It is recommended to read the [[GDT Tutorial]].
Line 43: Line 43:
The first entry in the '''GDT''' (Entry 0) should always be null and subsequent entries should be used instead.
The first entry in the '''GDT''' (Entry 0) should always be null and subsequent entries should be used instead.


Entries in the table are accessed by '''Segment Selectors''', which are loaded into '''[[Segmentation]]''' registers either by assembly instructions or by hardware functions such as '''[[Interrupts]]'''.
Entries in the table are accessed by '''[[Segment Selector|Segment Selectors]]''', which are loaded into '''[[Segmentation]]''' registers either by assembly instructions or by hardware functions such as '''[[Interrupts]]'''.


== Segment Descriptor ==
== Segment Descriptor ==