aboutsummaryrefslogtreecommitdiff
path: root/src/utils/gdt.h
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2021-04-12 10:13:21 +0200
committerLoic Guegan <manzerbredes@mailbox.org>2021-04-12 10:13:21 +0200
commit39713a3736145483dd3310c3605f940ca34f05c3 (patch)
treed4dcdf0f3b667a5d706aa4b04501a71facf186bd /src/utils/gdt.h
parent6edeba8fe208fb019aec00fdc72b97407a8078d3 (diff)
Refactoring
Diffstat (limited to 'src/utils/gdt.h')
-rw-r--r--src/utils/gdt.h77
1 files changed, 0 insertions, 77 deletions
diff --git a/src/utils/gdt.h b/src/utils/gdt.h
deleted file mode 100644
index f010891..0000000
--- a/src/utils/gdt.h
+++ /dev/null
@@ -1,77 +0,0 @@
-#ifndef GDT_H
-#define GDT_H
-
-#include "types.h"
-
-#define GDT_MAX_ENTRIES 8
-
-// Access byte
-#define GDT_AC 1 // Access bit
-#define GDT_RW 1 << 1 // Read/Write bit
-#define GDT_DC 1 << 2 // Direction bit/Conforming bit
-#define GDT_EXEC 1 << 3 // Executable bit
-#define GDT_S 1 << 4 // Descriptor type
-#define GDT_PRVL_0 0 // Privilege (from 0 to 3)
-#define GDT_PRVL_1 1 << 5
-#define GDT_PRVL_2 2 << 5
-#define GDT_PRVL_3 3 << 5
-#define GDT_PR 1 << 7 // Present Bit
-
-// Flags
-#define GDT_SZ 1 << 2 // Size bit
-#define GDT_GR 1 << 3 // Granularity bit
-
-typedef struct GDT_ENTRY {
- u32 base;
- u32 limit;
- u8 flags;
- u8 access;
-} GDT_ENTRY;
-
-struct GDT_REGISTER {
- u16 limit;
- u32 base;
-} __attribute__((packed));
-
-typedef struct GDT_TSS {
- u16 previous_task,previous_task_unused;
- u32 esp0;
- u16 ss0, ss0_unused;
- u32 esp1;
- u16 ss1, ss1_unused;
- u32 esp2;
- u16 ss2, ss2_unused;
- u32 cr3;
- u32 eip;
- u32 eflags;
- u32 eax;
- u32 ecx;
- u32 edx;
- u32 ebx;
- u32 esp;
- u32 ebp;
- u32 esi;
- u32 edi;
- u16 es, es_reserved;
- u16 cs, cs_reserved;
- u16 ss, ss_reserved;
- u16 ds, ds_reserved;
- u16 fs, fs_reserved;
- u16 gs, gs_reserved;
- u16 ldtss, ldtss_reserved;
- u16 t_reserved, io_map;
-} __attribute__((packed)) GDT_TSS;
-
-/**
- * Copy GDT in memory
- */
-void gdt_memcpy();
-
-/**
- * Write a GDT entry at address addr
- */
-void gdt_write_entry(GDT_ENTRY entry, u32 id);
-
-int gdt_user_ds_base();
-
-#endif