FreeRTOS - Task SchedulingHow does FreeRTOS handle time-slicing when multiple tasks have equal priority but one task blocks frequently?AThe scheduler switches CPU time among ready tasks, skipping blocked onesBThe blocked task still receives CPU time during blockingCTime-slicing stops until all tasks are ready againDThe highest priority task runs exclusively regardlessCheck Answer
Step-by-Step SolutionSolution:Step 1: Understand task states in schedulingBlocked tasks do not consume CPU time until they become ready.Step 2: Identify scheduler behavior with time-slicingScheduler switches CPU time only among ready tasks, skipping blocked ones.Final Answer:The scheduler switches CPU time among ready tasks, skipping blocked ones -> Option AQuick Check:Time-slicing with blocked tasks = D [OK]Quick Trick: Blocked tasks don't get CPU time during time-slicing [OK]Common Mistakes:Assuming blocked tasks runThinking time-slicing pausesIgnoring task states
Master "Task Scheduling" in FreeRTOS9 interactive learning modes - each teaches the same concept differentlyLearnWhyDeepVisualTryChallengeProjectRecallTime
More FreeRTOS Quizzes RTOS Fundamentals - Task states (Ready, Running, Blocked, Suspended) - Quiz 6medium RTOS Fundamentals - Why RTOS over bare-metal - Quiz 3easy Task Creation and Management - Task priority assignment - Quiz 13medium Task Creation and Management - Task handle usage - Quiz 7medium Task Creation and Management - Multiple tasks running concurrently - Quiz 4medium Task Creation and Management - Stack size allocation - Quiz 5medium Task Priorities - uxTaskPriorityGet() for reading priority - Quiz 2easy Task Priorities - uxTaskPriorityGet() for reading priority - Quiz 1easy Task Priorities - Choosing priorities for real applications - Quiz 10hard Task Scheduling - Priority-based scheduling - Quiz 13medium