diff options
| author | Miguel <m.i@gmx.at> | 2018-09-10 00:54:35 +0200 |
|---|---|---|
| committer | Miguel <m.i@gmx.at> | 2018-09-10 00:54:35 +0200 |
| commit | 88c5873713a4eda47d299abd9cecaa49221ec9fe (patch) | |
| tree | 0eeb21f69824ddbef5e3076704fc099d65848244 /kernel/kernel.c | |
| parent | 074490c63dd09fc941b1162f62af1985ee9576d3 (diff) | |
physical memory manager review et al.
Diffstat (limited to 'kernel/kernel.c')
| -rw-r--r-- | kernel/kernel.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/kernel/kernel.c b/kernel/kernel.c index dfcab3f..2fdb09b 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -46,12 +46,13 @@ void kernel_main(uint32_t eax,uint32_t ebx) // -- DISABLE LEGACY PIC -- // klog("Remapping & Disabling Programmable Interrupt Controller (PIC) ..."); + fixme("io_wait & spurious interrupts"); asm_pic_setup(); // -- GET CONFIGS -- // klog("Read Multiboot Structures ..."); multiboot_information *cfg_multiboot; - cfg_multiboot=multiboot_read(eax, ebx); + cfg_multiboot=multiboot_read(eax, ebx,true); klog("Read Advanced Power Configuration Interface (ACPI) Structures ..."); acpi_information cfg_acpi; @@ -67,15 +68,21 @@ void kernel_main(uint32_t eax,uint32_t ebx) klog("Interrupt Vector Table (IVT) init ..."); interrupts_init(0x08); interrupts_install(); - fixme("register interrupt callback funcs"); + fixme("register interrupt callback funcs (instead hardcoded dispatcher)"); // -- MEMORY MANAGEMENT -- // klog("Memory init ... "); uint32_t kernel_blocks=mem_init(cfg_multiboot); klog("Vritual Memory / Paging init ... "); + fixme("do not disable anymore on context switching!"); + fixme("write convenneint management funcs as: mapCPU, mapKErnel, map USerspace.."); + pdirectory *dir=vmem_init(kernel_blocks,(uint32_t)cfg_multiboot->framebuffer_addr,cfg_acpi.local_apic_address,cfg_acpi.io_apic_address); + + fixme("move stack?"); + // -- RAM IMAGE -- // klog("Ram Filesystem init ... "); fs_mount(cfg_multiboot); |
