글로벌 디스크립터 테이블 (GDT)의 기초를 밟았으며 ASM을 사용하여 "GDT.inc"를 성공적으로 작성하여 부트 로더에 쉽게 포함시킬 수 있습니다. . 아기 단계로서 난 메모리 (메모리의 어떤 부분)은 0xFFFFFFFF를글로벌 디스크립터 테이블에 두 개의 개별 세그먼트를 생성하는 방법
; null descriptor
dd 0 ; null descriptor--just fill 8 bytes with zero
dd 0
; code descriptor: ; code descriptor. Right after null descriptor
dw 0FFFFh ; limit low
dw 0 ; base low
db 0 ; base middle
db 10011010b ; access
db 11001111b ; granularity
db 0 ; base high
; data descriptor: ; data descriptor
dw 0FFFFh ; limit low (Same as code)
dw 0 ; base low
db 0 ; base middle
db 10010010b ; access
db 11001111b ; granularity
db 0 ; base high
지금 내 목적 GDT를 이용하여 두 개의 별개의 영역을 생성하는 것이다 바이트 읽기 및 첫 번째 바이트에서 작성하는 코드 디스크립터 데이터 디스크립터를 구성한 예를 들어, 처음에는 512B를 하나의 영역으로, 다음으로 512B를 다른 영역으로 사용하고 남은 공간은 사용되지 않은 상태로 둡니다.
어떻게해야합니까?