FreeRTOS任务优先级configMAX_PRIORITIES
FreeRTOS任务优先级 configMAX_PRIORITIES
每个任务分配一个从 0 到 (configMAX_PRIORITIES - 1) 的优先级,其中 configMAX_PRIORITIES 在 FreeRTOSConfig.h 中定义。
如果正在使用的端口实现了端口优化的任务选择机制,该机制使用“计数前导零”类型指令(用于在单个指令中选择任务)并且在 FreeRTOSConfig.h 中将 configUSE_PORT_OPTIMISED_TASK_SELECTION 设置为 1,则 configMAX_PRIORITIES 不能高于 32。在所有其他情况下,configMAX_PRIORITIES 可以在合理范围内取任何值 - 但出于 RAM 使用效率的原因,应将其保持在实际需要的最小值。
低优先级数字表示低优先级任务。空闲任务的优先级为零 (tskIDLE_PRIORITY)。
FreeRTOS 调度程序确保始终为处于就绪或运行状态的任务提供处理器 (CPU) 时间,优先于也处于就绪状态的较低优先级任务。换言之,处于运行状态的任务始终是能够运行的最高优先级任务。
任意数量的任务可以共享相同的优先级。如果未定义 configUSE_TIME_SLICING,或者如果 configUSE_TIME_SLICING 设置为 1,则具有相同优先级的就绪状态任务将使用时间切片循环调度方案共享可用处理时间。
页:
[1]