Hello Community,
Highlight on Usage
- I am using FreeRTOS Kernel V10.0.1 in my system with NXP S32K14x series SOC.
- We have almost 15 tasks at the application layer and out of that 1 task is very critical(With delay of 100ms) which is running on highest priority.
- We are doing some important calculation and to acheive the prefect timing / execution cycle, We are using “vTaskDelayUntil” in that task.
Problem in Detail
- As per requirement, At some point, We are suspending all the tasks (Task which has vTaskDelayUntil also suspending).
- Almost after 10 minutes, We are resuming every tasks.
- On resumption, System is trying to match the execution count, I mean system is saying we lost 10 minutes = 600 seconds = 600,000 ms / 100 ms = 6000 cycle.
- Mean system will try to run that task for 6000 times on system resume, Which is resulting in other task on hold for long time.
Looking for solution
- Can’t we have any simple solution like, If task is suspend then execution will be ignored?
Thanks in advance.
Regards,
Kalpesh Ramani