13 #define GDT_RING0_CODE_SEG 1 14 #define GDT_RING0_DATA_SEG 2 15 #define GDT_RING3_CODE_SEG 3 16 #define GDT_RING3_DATA_SEG 4 17 #define GDT_TASK_STATE_SEG 5 21 uint16_t limit0_15 : 16;
22 uint32_t base0_23 : 24;
31 uint8_t limit16_19 : 4;
35 uint8_t base24_31 : 8;
void gdt_init()
Initializes the GDT.
uint16_t gdt_get_selector(size_t entry)
Returns a selector ready to be loaded in a segment register.
void gdt_init_entry(size_t entry, uint32_t base, uint32_t limit)
Sets basic parameters of a GDT entry.