sys/bios任务调度严格遵循高优先级抢占调度原则,只要最高优先级的任务已就绪,就会抢占当前运行的任务,直到该最高优先级任务的状态发生以下改变,否则该任务将一直运行:
1、该线程调用的线程函数运行结束,转入MODE_TERMINATED;
2、线程阻塞,调用了Semaphore_pend或task_sleep函数等;
3、调用task_yield函数,线程让步给同优先级的其他任务,交出cpu控制权或调用task_setpri函数,降低自身的优先级,不再是当前最高优先级线程,而被已就绪的高优先级线程抢占。
任务hook函数:在任务调度的过程中的一些关键节点处调用的函数,用于监控整个任务调度情况。