summaryrefslogtreecommitdiff
path: root/src/kernel/ipc/object.h
diff options
context:
space:
mode:
authorAlexis211 <alexis211@gmail.com>2010-03-02 17:21:32 +0100
committerAlexis211 <alexis211@gmail.com>2010-03-02 17:21:32 +0100
commit6266a24cd2f71a0bad0e55c1eedd480790868c0f (patch)
treecc0c8c9f36ffa29ee3a1aa3ebafaff05f654e442 /src/kernel/ipc/object.h
parent3e1998280319e8060e797ca39b3b0b1bc766d569 (diff)
downloadTCE-6266a24cd2f71a0bad0e55c1eedd480790868c0f.tar.gz
TCE-6266a24cd2f71a0bad0e55c1eedd480790868c0f.zip
old uncommited changes commited
Diffstat (limited to 'src/kernel/ipc/object.h')
-rw-r--r--src/kernel/ipc/object.h26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/kernel/ipc/object.h b/src/kernel/ipc/object.h
new file mode 100644
index 0000000..ef90a66
--- /dev/null
+++ b/src/kernel/ipc/object.h
@@ -0,0 +1,26 @@
+#ifndef DEF_OBJECT_H
+#define DEF_OBJECT_H
+
+#include <task/task.h>
+
+#define OS_INACTIVE 0 //No one doing anything on this
+#define OS_LISTENING 1 //A thread is waiting for a request on this object
+#define OS_REQUESTPENDING 2 //A request is waiting for a thread to handle it
+#define OS_BUSY 3 //A thread is currently handling a request
+
+struct object {
+ struct process *owner;
+ int descriptors;
+ uint32_t busyMutex;
+ struct request *request;
+};
+
+struct obj_descriptor {
+ struct object *obj;
+ int id;
+ int owned;
+ struct obj_descriptor *next;
+};
+
+#endif
+