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.

LAUNCHXL-CC1310: non-preemtive scheduling with TI-RTOS possible?

Part Number: LAUNCHXL-CC1310

Hi,

Is there a mode or something I can select so that we can use TI-RTOS as a non-preemptive scheduler? Or is TI-RTOS only suitable for preemptive scheduling?

We don't want our tasks to be interrupted during execution, but only after they are done. So we don't want to interrupt a task for a higher priority task.

Right now I'm working with mailboxes to synchronize from one task to another.

Thank you!

  • Hi Mario,

    As far as I know there is no configuration in TI-RTOS to disable preemption between tasks (as confirmed in the TI-RTOS user's guide). One way to disable preemption would be to temporarily disable interrupts when you need a task to run to completion. However that would be inconvenient if you need to serve any interrupts in your task or use drivers that make use of interrupts internally.

    An alternative would be to use nortos instead, which allows the user to use all the TI drivers and abstraction layers without an underlying operating system (more informations in the User's guide). In nortos only one main thread is present and no additional threads are allowed to spawn from it. If you have no need for preemption and scheduler you could use C functions in nortos called by the main thread instead of threads.

    Regards,

    Fausto