Nucleus
Barry CPU specific segment c738dbb (3 years, 2 months ago)
diff --git a/kernel/main.c b/kernel/main.c
index bf1fd8c..76d5ef1 100644
--- a/kernel/main.c
+++ b/kernel/main.c
@@ -17,6 +17,8 @@
#include "desc.h"
#include "acpi/acpi.h"
+struct CPUData __seg_gs *cpu = 0;
+
extern char _bss[], _end[];
void page_fault_handler(struct InterruptFrame *frame);
@@ -45,6 +47,8 @@ cpu_load(void)
/* Tables */
cpu_load_idt();
cpu_load_gdt();
+ set_gs_base((uintptr_t) kmalloc(sizeof(struct CPUData)));
+ cpu->id = CPUID;
asm volatile("sti");
}