X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/003db17f7a36a8098827f40df8fedc087b5a26f6..4b6190b935dd75d8ddd514a05c7c7343e32c0cdc:/lunaix-os/includes/lunaix/process.h diff --git a/lunaix-os/includes/lunaix/process.h b/lunaix-os/includes/lunaix/process.h index 7c8c114..c7b925e 100644 --- a/lunaix-os/includes/lunaix/process.h +++ b/lunaix-os/includes/lunaix/process.h @@ -3,6 +3,7 @@ #include #include +#include #include #include #include @@ -13,7 +14,7 @@ // 虽然内核不是进程,但为了区分,这里使用Pid=-1来指代内核。这主要是方便物理页所有权检查。 #define KERNEL_PID -1 -#define PS_STOPPED 0 +#define PS_READY 0 #define PS_RUNNING 1 #define PS_TERMNAT 2 #define PS_DESTROY 4 @@ -57,9 +58,11 @@ struct proc_info /* ---- critical section end ---- */ + struct llist_header tasks; struct llist_header siblings; struct llist_header children; struct llist_header grp_member; + waitq_t waitqueue; struct { @@ -79,6 +82,7 @@ struct proc_info int flags; void* sig_handler[_SIG_NUM]; struct v_fdtable* fdtable; + struct v_dnode* cwd; pid_t pgid; };