diff options
| author | manzerbredes <loic.guegan_secondary@yahoo.fr> | 2015-07-21 14:23:57 +0400 |
|---|---|---|
| committer | manzerbredes <loic.guegan_secondary@yahoo.fr> | 2015-07-21 14:23:57 +0400 |
| commit | 7173bb91ceaf4121a050cc8360354219d728a859 (patch) | |
| tree | 135aa2e8d5b90c772a127c1917a16eee647b6baf /kernel/GDT | |
| parent | dd1226fb1f59037068096f71197dd25216e5ffc8 (diff) | |
Correct some mistake
Diffstat (limited to 'kernel/GDT')
| -rw-r--r-- | kernel/GDT/gdt.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/GDT/gdt.cpp b/kernel/GDT/gdt.cpp index 4e2c28c..3b84e71 100644 --- a/kernel/GDT/gdt.cpp +++ b/kernel/GDT/gdt.cpp @@ -1,5 +1,6 @@ #include "gdt.hpp" #include "../Helpers/types.hpp" +#include "../Helpers/memory.hpp" Gdt::Gdt(){ @@ -39,7 +40,14 @@ void Gdt::initGdtDesc(u32 base, u32 limit, u8 access, u8 flags, gdtDescriptorStr } void Gdt::loadGdt(){ + int *gdtAdress=(int *)&m_Pointer; //Copy Gdt into memory and init registers + memcpy((u32)m_Descriptors, (u32)m_Pointer.segment, (u32)m_Pointer.size); + + __asm__("lgdtl (%0);" + : + :"r"(gdtAdress) + ); } |
