FreeRTOS - Task PrioritiesA task with priority 5 is starved and never runs, even though lower priority tasks run fine. What is a possible error?AA higher priority task is always ready and preempts itBThe task priority is set too lowCThe task is suspended accidentallyDThe scheduler is not startedCheck Answer
Step-by-Step SolutionSolution:Step 1: Analyze starvation causeStarvation happens if higher priority tasks always run, blocking lower priority ones.Step 2: Apply to given priorityTask with priority 5 is starved likely because a task with priority >5 is always ready.Final Answer:A higher priority task is always ready and preempts it -> Option AQuick Check:Starvation = Higher priority task always ready [OK]Quick Trick: Starvation caused by always ready higher priority tasks [OK]Common Mistakes:Assuming priority 5 is too low without checking othersIgnoring task suspension stateForgetting to start the scheduler
Master "Task Priorities" in FreeRTOS9 interactive learning modes - each teaches the same concept differentlyLearnWhyDeepVisualTryChallengeProjectRecallTime
More FreeRTOS Quizzes RTOS Fundamentals - Why RTOS over bare-metal - Quiz 8hard Task Creation and Management - Task priority assignment - Quiz 5medium Task Priorities - vTaskPrioritySet() dynamic priority - Quiz 4medium Task Priorities - Why priority design matters - Quiz 1easy Task Priorities - uxTaskPriorityGet() for reading priority - Quiz 14medium Task Scheduling - Preemptive scheduling behavior - Quiz 7medium Task Scheduling - Idle task and idle hook - Quiz 10hard Task Scheduling - Idle task and idle hook - Quiz 14medium Task Scheduling - Time-slicing for equal priority tasks - Quiz 5medium Task Scheduling - Idle task and idle hook - Quiz 5medium