diff options
Diffstat (limited to 'src/kernel/core')
-rw-r--r-- | src/kernel/core/kmain.c | 5 | ||||
-rw-r--r-- | src/kernel/core/loader_.asm | 2 |
2 files changed, 4 insertions, 3 deletions
diff --git a/src/kernel/core/kmain.c b/src/kernel/core/kmain.c index 9fb1397..1577ac7 100644 --- a/src/kernel/core/kmain.c +++ b/src/kernel/core/kmain.c @@ -50,10 +50,11 @@ void kmain(struct multiboot_info_t* mbd, int32_t magic) { if (elf_check((uint8_t*)mods[i].mod_start)) { monitor_write(" : Invalid ELF file\n"); } else { - if (elf_exec((uint8_t*)mods[i].mod_start, PL_DRIVER) == 0) { + struct process *pr = elf_exec((uint8_t*)mods[i].mod_start, PL_DRIVER); + if (pr == 0) { monitor_write(" : Error loading\n"); } else { - monitor_write(" : OK\n"); + monitor_write(" : OK pid:"); monitor_writeDec(pr->pid); monitor_write("\n"); } } } diff --git a/src/kernel/core/loader_.asm b/src/kernel/core/loader_.asm index d3b92cf..5ee998a 100644 --- a/src/kernel/core/loader_.asm +++ b/src/kernel/core/loader_.asm @@ -31,7 +31,7 @@ loader: ;here, we load our false GDT, used for having the kernel in higher half section .text higherhalf: ; now we're running in higher half - mov esp, tasking_tmpStack+0x4000 ; set up the stack + mov esp, tasking_tmpStack+0x8000 ; set up the stack push eax ; pass Multiboot magic number add ebx, 0xE0000000 ; update the MB info structure so that it is in the new seg push ebx ; pass Multiboot info structure |