THREAD_STAT_ACTIVE, // Running and schedulable process
THREAD_STAT_SLEEPING, // Message Sleep
THREAD_STAT_MUTEXSLEEP, // Mutex Sleep
+ THREAD_STAT_SEMAPHORESLEEP, // Semaphore Sleep
THREAD_STAT_WAITING, // ??? (Waiting for a thread)
THREAD_STAT_PREINIT, // Being created
THREAD_STAT_ZOMBIE, // Died/Killed, but parent not informed
"THREAD_STAT_ACTIVE",
"THREAD_STAT_SLEEPING",
"THREAD_STAT_MUTEXSLEEP",
+ "THREAD_STAT_SEMAPHORESLEEP",
"THREAD_STAT_WAITING",
"THREAD_STAT_PREINIT",
"THREAD_STAT_ZOMBIE",
extern tThread *Threads_GetThread(Uint TID);
extern void Threads_SetPriority(tThread *Thread, int Pri);
extern int Threads_Wake(tThread *Thread);
+extern void Threads_Kill(tThread *Thread, int Status);
extern void Threads_AddActive(tThread *Thread);
+extern tThread *Threads_RemActive(void);
extern tThread *Threads_GetNextToRun(int CPU, tThread *Last);
+extern void Threads_SetFaultHandler(Uint Handler);
+
+extern int Threads_SetUID(Uint *Errno, tUID ID);
+extern int Threads_SetGID(Uint *Errno, tUID ID);
+extern int Threads_WaitTID(int TID, int *Status);
+
+extern tThread *Threads_CloneTCB(Uint *Err, Uint Flags);
+extern tThread *Threads_CloneThreadZero(void);
+
+extern int Proc_SendMessage(Uint *Err, Uint Dest, int Length, void *Data);
+extern int Proc_GetMessage(Uint *Err, Uint *Source, void *Buffer);
+
#endif