#include #include #include "hal/hal.h" #include "kprintf.h" #include "serial.h" #include "gdt.h" #include "idt.h" void hal_init(void) { if (!serial_init()) { hal_hang(); // going further makes no sense } LOG("hal", "serial init\n"); gdt_init(); idt_init(); } __attribute__((noreturn)) void hal_hang(void) { for(;;) { asm("hlt"); } }