X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Kernel%2Finclude%2Fthreads.h;h=1e15547c3436a652f09a9911478f36be28db7363;hb=391af300bd045791b8aaf50cf44b2d503c763213;hp=644d0333ac1e7a42419ec80bf534b63c2bbb17c1;hpb=f119d0e5b18b7286d04fc536a94e0f96e3c51714;p=tpg%2Facess2.git diff --git a/Kernel/include/threads.h b/Kernel/include/threads.h index 644d0333..1e15547c 100644 --- a/Kernel/include/threads.h +++ b/Kernel/include/threads.h @@ -16,6 +16,7 @@ typedef struct sMessage typedef struct sThread { + // --- threads.c's struct sThread *Next; //!< Next thread in list int IsLocked; //!< Thread's spinlock int Status; //!< Thread Status @@ -27,7 +28,9 @@ typedef struct sThread Uint UID, GID; //!< User and Group char *ThreadName; //!< Name of thread - tVAddr KernelStack; //!< Kernel Stack Base + // --- arch/proc.c's responsibility + //! Kernel Stack Base + tVAddr KernelStack; //! Memory Manager State tMemoryState MemState; @@ -35,6 +38,7 @@ typedef struct sThread //! State on task switch tTaskState SavedState; + // --- threads.c's int CurSignal; //!< Signal currently being handled (0 for none) tVAddr SignalHandlers[NSIG]; //!< Signal Handler List tTaskState SignalState; //!< Saved state for signal handler @@ -62,5 +66,6 @@ enum { extern tThread *Proc_GetCurThread(); extern tThread *Threads_GetThread(Uint TID); extern void Threads_Wake(tThread *Thread); +extern void Threads_AddActive(tThread *Thread); #endif