oskit_u32_t (*set_mode)(struct tcb *,oskit_u32_t)set_mode() is called by the rtker to change the status of a thread.The argument passed to set_mode is either of THREAD_BLOCKED , THREAD_SUSPENDED or THREAD_READY. The scheduler should change the status field of the thread appropriately & possibly update it's data structure. The kernel does not require the scheduler to keep track of blocked or suspended threads.