diff options
Diffstat (limited to 'src/kernel/user/process.c')
-rw-r--r-- | src/kernel/user/process.c | 23 |
1 files changed, 3 insertions, 20 deletions
diff --git a/src/kernel/user/process.c b/src/kernel/user/process.c index 7519dae..22295ef 100644 --- a/src/kernel/user/process.c +++ b/src/kernel/user/process.c @@ -2,29 +2,12 @@ #include <process.h> typedef struct process { - thread_t *thread; - int pid; - - mutex_t com_mutex; + pagedir_t *pd; - hashtbl_t *chans; - chan_id_t next_chan_id; - - message_t mbox[PROCESS_MAILBOX_SIZE]; - int mbox_size; // number of messages in queue - int mbox_first; // first message in queue (circular buffer) + thread_t *thread; - // a process can be in several waiting states : - // - wait for any message - // - wait for a message on a particular channel - // in this case, if a message is pushed on this particular channel, - // then it is put in front of the queue, so that it is the next message read - // (it is guaranteed that doing await_message_on_chan() immediately followed by get_message() - // gets the message whose size was returned by await_...) - int wait_state; - chan_id_t wait_chan_id; // when waiting for a message on a particular channel + int pid, ppid; } process_t; -int push_message(process_t *proc, message_t msg); // nonnull on error (process queue is full) /* vim: set ts=4 sw=4 tw=0 noet :*/ |