0362cdb46839e328a7a45672bbc659174ad872eb
[tpg/acess2.git] / KernelLand / Kernel / include / threads.h
1 /*
2  * Acess2 Kernel
3  */
4 #ifndef _THREADS_H_
5 #define _THREADS_H_
6
7 #include <arch.h>
8 #include <signal.h>
9 //#include <proc.h>
10
11 enum eFaultNumbers
12 {
13         FAULT_MISC,
14         FAULT_PAGE,
15         FAULT_ACCESS,
16         FAULT_DIV0,
17         FAULT_OPCODE,
18         FAULT_FLOAT
19 };
20
21 #define GETMSG_IGNORE   ((void*)-1)
22
23 typedef struct sThread  tThread;
24
25 // === FUNCTIONS ===
26 extern tThread  *Proc_GetCurThread(void);
27
28 extern void     Threads_SetFaultHandler(Uint Handler);
29
30 extern int      Threads_SetUID(tUID ID);
31 extern int      Threads_SetGID(tUID ID);
32 extern tTID     Threads_WaitTID(int TID, int *Status);
33
34
35 extern int      *Threads_GetMaxFD(void);
36 extern char     **Threads_GetCWD(void);
37 extern char     **Threads_GetChroot(void);
38
39 extern int      Proc_SendMessage(Uint Dest, int Length, void *Data);
40 extern int      Proc_GetMessage(Uint *Source, void *Buffer);
41
42 #endif

UCC git Repository :: git.ucc.asn.au