FreeRTOS任务定义与切换机制详解
任务的定义和任务切换的实现,其实是你玩 FreeRTOS 绕不过去的一块核心内容。FreeRTOS 里的任务,就像是你写的多个“独立小程序”,每个有自己的栈、自己的优先级。调度器就像老板,谁重要就先安排谁上。任务之间还能主动“让出舞台”,比如用 vTaskDelay()
暂停一下,或者优先级高的突然插队,那就切换呗。切换过程讲究,要保存上下文,保护现场,搞不好数据就乱套了。所以,FreeRTOS 还了像 taskENTER_CRITICAL()
这样的“护身符”函数,防止切换中被中断打断。你如果刚开始搞 RTOS,或者想深入了解调度背后的机制,这篇文章蛮值得一看。
下载地址
用户评论