feat: heap support and re-worked
[lunaix-os.git] / lunaix-os / includes / lunaix / process.h
index c014443089bb557b35991bb7f1968c3873123a7b..0029e363d759a4366d1b684351341145ce388f7f 100644 (file)
@@ -6,6 +6,7 @@
 #include <lunaix/ds/waitq.h>
 #include <lunaix/fs.h>
 #include <lunaix/mm/mm.h>
+#include <lunaix/mm/region.h>
 #include <lunaix/signal.h>
 #include <lunaix/timer.h>
 #include <lunaix/types.h>
 
 #define PROC_FINPAUSE 1
 
-struct proc_mm
-{
-    heap_context_t u_heap;
-    struct mm_region regions;
-};
-
 struct proc_sigstate
 {
     isr_param proc_regs;
@@ -93,6 +88,12 @@ struct proc_info
 
 extern volatile struct proc_info* __current;
 
+static inline void
+block_current()
+{
+    __current->state = PS_BLOCKED;
+}
+
 /**
  * @brief 分配并初始化一个进程控制块
  *