This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

What is the difference between task and SWI on register?

Hi,

I once was asked about what difference exists between task and SWI on their register. I do not find the answer on the RTOS manual. Can anyone help me on this question?

Thanks

  • Hi Robert,

    I did not understand what you mean by "differences on register". If you are asking what is the difference between a Task and Swi thread in general then here goes:

    A Swi is a non-blocking thread that runs to completion and can only be pre-empted by a higher priority Swi or a Hwi (interrupt). Swi's can pre-empt a Task thread when posted and run on the ISR (system) stack (i.e. they do not have their own stack).

    A Task thread on the other hand is a blocking thread and can be pre-empted by a higher priority Task or by Swi/Hwi. Also, Tasks run on their own independent stack.

    Best,

    Ashish