FreeRTOS 是一个嵌入式操作系统,提供了协程作为一种轻量级的任务管理机制。
协程是一种轻量级的线程,具有更高的效率和更低的资源消耗。它和线程的主要区别在于,协程不需要系统调度器进行上下文切换,而是通过协程自己维护自己的上下文状态,在需要切换时进行主动让出。
FreeRTOS 中的协程是通过函数调用实现的,使用者可以自己编写协程函数,并在函数内部使用 FreeRTOS 提供的 API 进行协程之间的切换。
FreeRTOS 中协程与任务是等价的,但是协程轻量级,资源消耗少,更加高效。
在FreeRTOS中,协程通过使用函数调用来支持,支持向后跳转,因此可以在程序中很容易地支持协程。