#pragma once #include #include void gdt_set_gate(int, unsigned long, unsigned long, unsigned char, unsigned char); void gdt_install(); void idt_set_gate(unsigned char, unsigned long, unsigned short, unsigned char); void idt_install(); typedef struct registers { uint32_t ds; uint32_t edi, esi, ebp, esp, ebx, edx, ecx, eax; uint32_t int_no, err_code; uint32_t eip, cs, eflags, useresp, ss; } registers_t; void isr_install();