- added helper function for __KernelCreateThread

- added __KernelSwitchToThread for enabling a thread
- added __KernelRotateThreadReadyQueue
This commit is contained in:
bunnei 2014-05-14 20:50:30 -04:00
parent 9f5588725c
commit b99a5da65b
2 changed files with 76 additions and 4 deletions

View file

@ -30,6 +30,10 @@ class Thread;
Thread* __KernelCreateThread(UID& id, UID module_id, const char* name, u32 priority, u32 entrypoint,
u32 arg, u32 stack_top, u32 processor_id, int stack_size=0x4000);
UID __KernelCreateThread(UID module_id, const char* name, u32 priority, u32 entry_point, u32 arg,
u32 stack_top, u32 processor_id, int stack_size=0x4000);
void __KernelResetThread(Thread *t, int lowest_priority);
void __KernelChangeReadyState(Thread *thread, UID thread_id, bool ready);
void __KernelChangeReadyState(UID thread_id, bool ready);
@ -37,7 +41,9 @@ Thread* __KernelNextThread();
void __KernelSaveContext(ThreadContext *ctx);
void __KernelLoadContext(ThreadContext *ctx);
void __KernelSwitchContext(Thread *target, const char *reason);
bool __KernelSwitchToThread(UID thread_id, const char *reason);
UID __KernelSetupRootThread(UID module_id, int arg, int prio, int stack_size=0x4000);
int __KernelRotateThreadReadyQueue(int priority=0);
void __KernelThreadingInit();
void __KernelThreadingShutdown();