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.

SYS BIOS System Tick

Other Parts Discussed in Thread: SYSBIOS

Hello,

I have a simple question,

Does SYS BIOS kernel pre-empts the cpu on every single system tick?

Thanks

  • Ordinarily this is true.

    However, on some devices (ie MSP430, Tiva/Stellaris) we support the Clock_TickMode_DYNAMIC operation which, rather than interrupt the CPU on every Clock.tickPeriod interval, will attempt to schedule an interrupt only when the next Clock object timeout is set to expire.

    Only a few device timer architectures allow this mode of operation. However, MSP430 and Tiva/Stellaris LM4F devices are among those that do.

    Alan

  • Thanks, one more question here :)

    Is it mandatory to use Clock module in our SysBios configuration? If we don't need any of its capabilities, will SysBios still be interrupting system code on every system tick?

  • It is NOT mandatory that the Clock module be used.

    By setting:

        BIOS.clockEnabled = false;

    the Clock module will not be automatically pulled in by SYS/BIOS.

    Remember that this means that pend-with-timeout APIs such as Semaphore_pend(), Mailbox_pend(), Event_pend() will only support timeout arguments of BIOS_WAIT_FOREVER or BIOS_NO_WAIT. And the Task_sleep() API will not work at all.

    Alan