Ömer Özsipahi feature: C kernel
gdt64.asm 846 B
_gdt64_start:
_gdt64_null:
dq 0
_gdt64_kernel_code:
dd 0x0 ; segment limit and base adress ofsett's are ignored in 64 bit mode more detail amd64_arch.pdf page 97 <-----|
db 0x0 ; again base adress are ignored in 64 bit -------------------------------------------------------------------|
; C = 0, DPL = 00, P = 1 10011011b
db 10011011b
db 00100000b
db 0x0
_gdt64_user_code:
dd 0x0
db 0x0
db 11111100b
db 00100000b
db 0x0
_gdt64_kernel_data:
dd 0x0
db 0x0
db 10010010b
db 0x0
db 0x0
_gdt64_user_data:
dd 0x0
db 0x0
db 11110010b
db 0x0
db 0x0
_gdt64_end:
_gdt64_descriptor:
dw _gdt64_end - _gdt64_start - 1
dd _gdt64_start
GDT64_KERNEL_CODE: equ _gdt64_kernel_code - _gdt64_start
GDT64_KERNEL_DATA: equ _gdt64_kernel_data - _gdt64_start