X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/b91be0033265b5b6bd716bd39cb0971da41906c4..7804c2dae30700296c3205aaf7f546f491999bf4:/lunaix-os/kernel/asm/i386/gdt.c diff --git a/lunaix-os/kernel/asm/i386/gdt.c b/lunaix-os/kernel/asm/i386/gdt.c deleted file mode 100644 index 92e31d1..0000000 --- a/lunaix-os/kernel/asm/i386/gdt.c +++ /dev/null @@ -1,30 +0,0 @@ -#include -#include -#include - -#define GDT_ENTRY 6 - -u64_t _gdt[GDT_ENTRY]; -u16_t _gdt_limit = sizeof(_gdt) - 1; - -void -_set_gdt_entry(u32_t index, u32_t base, u32_t limit, u32_t flags) -{ - _gdt[index] = - SEG_BASE_H(base) | flags | SEG_LIM_H(limit) | SEG_BASE_M(base); - _gdt[index] <<= 32; - _gdt[index] |= SEG_BASE_L(base) | SEG_LIM_L(limit); -} - -extern struct x86_tss _tss; - -void -_init_gdt() -{ - _set_gdt_entry(0, 0, 0, 0); - _set_gdt_entry(1, 0, 0xfffff, SEG_R0_CODE); - _set_gdt_entry(2, 0, 0xfffff, SEG_R0_DATA); - _set_gdt_entry(3, 0, 0xfffff, SEG_R3_CODE); - _set_gdt_entry(4, 0, 0xfffff, SEG_R3_DATA); - _set_gdt_entry(5, (u32_t)&_tss, sizeof(struct x86_tss) - 1, SEG_TSS); -} \ No newline at end of file