OSTaskSwHook()

来源:互联网 发布:中车待遇知乎 编辑:程序博客网 时间:2024/06/16 23:32
void OSTaskSwHook(void)FileCalled fromCode enabled byOS_CPU_C.COSCtxSw() andOSIntCtxSw()OS_CPU_HOOKS_EN当执行任务切换时都会调用该函数。全局变量OSTCBHighRdy指向得到CPU的任务的TCB,而OSTCBCur指向被切换出去的任务的TCB。OSTaskSwHook()在保存好了任务的寄存器和保存好了指向当前任务TCB的堆栈指针后马上被调用。用户可以用该函数来保存或恢复浮点寄存器或MMU寄存器的内容,来得到任务执行时间的轨迹以及任务被切换进来的次数等等。参数无返回值无注意事项该函数在被调用的时候中断是禁止的。因此用户应尽量减少该函数中的代码以缩短中断的响应时间。范例void OSTaskSwHook (void){    /* 将浮点寄存器的内容储存在当前任务的TCB扩展域中。 */    /* 用新任务的TCB扩展域中的值更新浮点寄存器的内容。   */}

0 0
原创粉丝点击