summaryrefslogtreecommitdiff
path: root/src/kernel/task/task.h
diff options
context:
space:
mode:
authorAlex AUVOLAT <alexis211@gmail.com>2012-05-18 16:16:07 +0200
committerAlex AUVOLAT <alexis211@gmail.com>2012-05-18 16:16:07 +0200
commit7e6454020ed1143e05e83a683606f318995458e5 (patch)
tree763ec6f5dda5f8f662f5eeb38f29d4279681b0a2 /src/kernel/task/task.h
parentdaa6c2450fa0646619698f0dc01b0456b2541317 (diff)
downloadTCE-7e6454020ed1143e05e83a683606f318995458e5.tar.gz
TCE-7e6454020ed1143e05e83a683606f318995458e5.zip
Can now spawn new processes.
Diffstat (limited to 'src/kernel/task/task.h')
-rw-r--r--src/kernel/task/task.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/kernel/task/task.h b/src/kernel/task/task.h
index 99738b9..2ebb66e 100644
--- a/src/kernel/task/task.h
+++ b/src/kernel/task/task.h
@@ -34,8 +34,8 @@ class process {
segment_map *dataseg;
- process *next; //Forms a linked list
thread *threads;
+ thread *threads_waiting; // threads waiting for this process to end
earray<node> fd; // file descriptors
@@ -77,9 +77,12 @@ uint32_t tasking_handleException(registers *regs);
void thread_goInactive(); //Blocks the current thread. it is then waked up by another thread or a system event.
int proc_priv(); //Returns current privilege level
-void thread_exit(); //syscall
-void process_exit(size_t retval); //syscall
+// syscalls
+void thread_exit();
+void process_exit(size_t retval);
size_t process_sbrk(size_t size);
void process_brk(size_t ptr);
+int process_run(char* file, char** args);
+int process_waitpid(int pid);
#endif