Support to multi-threading and pthread interface (POSIX.1-2008) (#23)
[lunaix-os.git] / lunaix-os / includes / lunaix / exec.h
index 2bc0d9439c60ebea89bba40a7c5ac3928ba0c3a5..a49845e9724cf77a504327f3c463db953dcd16be 100644 (file)
@@ -28,7 +28,7 @@ struct exec_container
     struct load_context exe;
 
     // argv prependums
-    char* argv_pp[2];
+    const char* argv_pp[2];
     const char** argv;
     const char** envp;
 
@@ -43,7 +43,7 @@ struct uexec_param
     char** argv;
     int envc;
     char** envp;
-} PACKED;
+} compact;
 
 #ifndef __USR_WRAPPER__
 
@@ -56,6 +56,13 @@ exec_load(struct exec_container* container, struct v_file* executable);
 int
 exec_kexecve(const char* filename, const char* argv[], const char* envp[]);
 
+void
+exec_init_container(struct exec_container* param,
+                    struct thread* thread,
+                    ptr_t vms,
+                    const char** argv,
+                    const char** envp);
+
 #endif
 
 #endif /* __LUNAIX_LOADER_H */