From 675063840f31ccc8a7121a3949e8be6d2a963a4c Mon Sep 17 00:00:00 2001 From: Adrien Bourmault Date: Thu, 9 Jan 2020 00:31:22 +0100 Subject: [PATCH] Now working on a new paging system --- build/kernel.ld | 1 + kaleid/kernel/init/init.c | 14 ++++++-------- kaleid/kernel/mm/paging.c | 1 + 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/build/kernel.ld b/build/kernel.ld index bcc86e2..7604bd8 100644 --- a/build/kernel.ld +++ b/build/kernel.ld @@ -75,3 +75,4 @@ SECTIONS { kernelEnd = .; } + diff --git a/kaleid/kernel/init/init.c b/kaleid/kernel/init/init.c index cee2d63..73e26d3 100644 --- a/kaleid/kernel/init/init.c +++ b/kaleid/kernel/init/init.c @@ -62,21 +62,19 @@ noreturn void BtStartKern(multiboot_info_t *mbInfo, uint mbMagic, void *codeSeg) // Memory MmInitMemoryMap(); - MmInitPaging(); - MmInitHeap(); MmInitGdt(); + MmInitHeap(); + MmInitPaging(); - // Basics for interrupts + // IDT KeSetupIDT(); KeEnableIRQs(); + + // Interrupt handlers + MmActivatePageHandler(); KeEnableRTC(); KeEnablePIT(); KeGetCpuInfos(); - - // Memory (2) - MmActivatePageHandler(); - - // Drivers IoEnableKeyb(); // Command line (kernel mode) diff --git a/kaleid/kernel/mm/paging.c b/kaleid/kernel/mm/paging.c index 1b7ff74..98864f7 100644 --- a/kaleid/kernel/mm/paging.c +++ b/kaleid/kernel/mm/paging.c @@ -22,6 +22,7 @@ enum #define RAM_MAX 32 #define NB_4K 150 // * 2 MB +#define USERSPACE 0x40000000 //-----------