Hi All,
I am new to use TI-RTOS. I have a bit confusion about HWI, SWI and TASK. Because I have some experience of using FreeRTOS-like RTOSes, so for the TASK I have no problem to understand it in TI-RTOS. But the two concepts 'SWI' and 'HWI', I cannot understand them well.
According to some references, I know HWI and SWI use the same C STACK (system STACK). Both of them cann't be blocked until they complete there execution. And both of them have priorities. The low priority HWI/SWI can be preempted by high priority HWI/SWI.
And HWI is essentially some C callback functions called in ISR function.
But I don't know where the TI-RTOS schedules SWIs. From the study vedio of TI-RTOS SWI, it pointed that
SWI function is also scheduled in ISR function. See below picture 'run any posted Swis'.
Above is my understanding about the scheduling of HWI and SWI. Please correct me if I'm wrong.
Thanks and Best Regards.
Brian.