1 #ifndef __LUNAIX_EXEC_H
2 #define __LUNAIX_EXEC_H
4 #include <lunaix/elf.h>
6 #include <lunaix/process.h>
7 #include <lunaix/types.h>
10 #define DEFAULT_LOADER "usr/ld"
12 #define MAX_VAR_PAGES 8
13 #define DEFAULT_HEAP_PAGES 16
19 struct exec_container* container;
29 struct proc_info* proc;
32 struct load_context executable;
35 ptr_t entry; // mapped to one of {executable|loader}.entry
48 #ifndef __USR_WRAPPER__
51 exec_load_byname(struct exec_container* container,
57 exec_load(struct exec_container* container,
58 struct v_file* executable,
63 exec_kexecve(const char* filename, const char* argv[], const char* envp);
67 #endif /* __LUNAIX_LOADER_H */