[srv.init] Load initial programs in srv.init

Add a simple ELF loader to srv.init to load and start any module_program
parameters passed from the bootloader. Also creates stacks for newly
created threads.

Also update thread creation in testapp to create stacks.
This commit is contained in:
Justin C. Miller
2021-12-26 15:42:12 -08:00
parent 300bf9c2c5
commit 25522a8450
6 changed files with 183 additions and 22 deletions

View File

@@ -0,0 +1,10 @@
#pragma once
/// \file loader.h
/// Routines for loading and starting other programs
namespace kernel {
namespace init {
struct module_program;
}}
bool load_program(const kernel::init::module_program &prog, char *err_msg);