#include <process.h>
#include <signal.h>
#include <string.h>
+#include <spinlock.h>
#include "fd.h"
#include "sched.h"
uid_t p_uid;
gid_t p_gid;
+ spinlock_t p_lock;
+
struct {
struct cxmsg *msg;
pid_t sender;
return(ret_val);
}
+void process_lock(process_t *proc)
+{
+ spinlock_lock(&(proc->p_lock));
+ return;
+}
+
+int process_unlock(process_t *proc)
+{
+ return(spinlock_unlock(&(proc->p_lock)));
+}
+
process_t* process_get_current(void)
{
process_t *ret_val;
int process_create(process_t**, pid_t, u32_t, void*);
int process_switch(process_t*);
+void process_lock(process_t*);
+int process_unlock(process_t*);
+
process_t* process_get_current(void);
process_t* process_lookup(pid_t);