diff options
author | dzwdz | 2021-07-18 20:01:20 +0200 |
---|---|---|
committer | dzwdz | 2021-07-18 20:01:20 +0200 |
commit | a31794504d911d584265ac0427dfbba9a4d9ef72 (patch) | |
tree | ceff471e05be07eca6c2281a8c1d0bdcd19678b2 /src/kernel/main.c | |
parent | 185c7c44c0da51b5442abf4fd3fb549f99c5bab8 (diff) |
basic executable loading
Diffstat (limited to 'src/kernel/main.c')
-rw-r--r-- | src/kernel/main.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/kernel/main.c b/src/kernel/main.c index 677faaf..7f49fed 100644 --- a/src/kernel/main.c +++ b/src/kernel/main.c @@ -3,16 +3,21 @@ #include <kernel/mem.h> #include <kernel/panic.h> #include <kernel/proc.h> +#include <kernel/util.h> +#include <stdint.h> void r3_test(); void kmain(struct kmain_info info) { - log_write(info.init.at, info.init.size); log_const("mem..."); mem_init(&info); log_const("creating process..."); - struct process *proc = process_new(r3_test); + + void *init_addr = (void*)0x200000; + memcpy(init_addr, info.init.at, info.init.size); + + struct process *proc = process_new(init_addr); log_const("switching..."); process_switch(proc); } |