summaryrefslogtreecommitdiff
path: root/Source/Kernel/MemoryManager/GDT.wtf.asm
blob: beb668dfd62b18e0b6c06a5550a212ba70ae4125 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[GLOBAL gdt_flush]

gdt_flush:
  mov eax, [esp+4]
  lgdt [eax]

  mov ax, 0x10
  mov ds, ax
  mov es, ax
  mov fs, ax
  mov gs, ax
  mov ss, ax
  jmp 0x08:.flush

.flush:
  ret
  

[GLOBAL tss_flush]
tss_flush:
	mov ax, 0x2B		;entry 5 = 0x28, with RPL=3
	ltr ax
	ret