summaryrefslogtreecommitdiff
path: root/kernel/GDT
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/GDT')
-rw-r--r--kernel/GDT/Makefile5
-rw-r--r--kernel/GDT/gdt.cpp11
-rw-r--r--kernel/GDT/gdt.h22
-rw-r--r--kernel/GDT/gdt.hpp33
4 files changed, 49 insertions, 22 deletions
diff --git a/kernel/GDT/Makefile b/kernel/GDT/Makefile
new file mode 100644
index 0000000..6e1b2c8
--- /dev/null
+++ b/kernel/GDT/Makefile
@@ -0,0 +1,5 @@
+gdt.o: gdt.cpp
+ g++ -m32 -c -o gdt.o gdt.cpp
+
+clean:
+ rm *.o
diff --git a/kernel/GDT/gdt.cpp b/kernel/GDT/gdt.cpp
new file mode 100644
index 0000000..5aa8065
--- /dev/null
+++ b/kernel/GDT/gdt.cpp
@@ -0,0 +1,11 @@
+#include "gdt.hpp"
+#include "../Types/types.hpp"
+
+
+void initGdtDesc(u32 base, u32 limit, u8 type, u8 param, gdtDescriptorStruct *descriptor){
+
+}
+
+
+void initGdt(){
+}
diff --git a/kernel/GDT/gdt.h b/kernel/GDT/gdt.h
deleted file mode 100644
index 3df5698..0000000
--- a/kernel/GDT/gdt.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef __GDT__
-#define __GDT__
-
-#include "../Types/types.h"
-
-struct gdtPointer{
- u16 size;
- u32 segment;
-} __attribute__ ((packed));
-
-struct gdtDescriptor{
- u16 limit1;
- u16 base1;
- u8 base2;
- u8 type : 4;
- u8 param1 : 4;
- u8 limit2 : 4;
- u8 param2 : 4;
- u8 base3;
-} __attribute__ ((packed));
-
-#endif
diff --git a/kernel/GDT/gdt.hpp b/kernel/GDT/gdt.hpp
new file mode 100644
index 0000000..4b16886
--- /dev/null
+++ b/kernel/GDT/gdt.hpp
@@ -0,0 +1,33 @@
+#ifndef __GDT__
+#define __GDT__
+
+#include "../Types/types.hpp"
+
+//Define GDT pointer
+struct gdtPointerStruct{
+ u16 size;
+ u32 segment;
+} __attribute__ ((packed));
+
+//Define GDT descriptor
+struct gdtDescriptorStruct{
+ u16 limit1;
+ u16 base1;
+ u8 base2;
+ u8 type : 4;
+ u8 param1 : 4;
+ u8 limit2 : 4;
+ u8 param2 : 4;
+ u8 base3;
+} __attribute__ ((packed));
+
+
+//Typedef :
+typedef struct gdtPointerStruct gdtPointerStruct;
+typedef struct gdtDescriptorStruct gdtDescriptorStruct;
+
+//Functions :
+void initGdtDesc(u32 base, u32 limit, u8 type, u8 param, gdtDescriptorStruct *descriptor);
+void initGdt();
+
+#endif