一.设计
特征
FreeRTOS提供了一些标准的特征。
RTOS调度策略的选择: 1.抢占式,总是运行可用的最高优先级的任务。相同优先级的任务共享CPU时间(抢占兼具有时间片轮转)
2.协作式,只有任务阻塞了或 者显式的调用taskYIELD(),任务才会切换.
消息队列
信号灯
可视化追踪(需要更多的RAM)
大部分源代码适用于所有支持的开发工具
设计哲学
FreeRTOS设计成简单,可移植,精炼的特点。
几乎所有的代码是用C语言编写,只有少数完全不可避免的地方使用了汇编函数。这样做不会获得紧凑优化的代码,但是使得该代码是易读,易维护,易移植。
如果关注于性能,很容易导致移植成本提升。这对于大多数应用没有必要。
该RTOS内核使用了多个优先级链表(list),提供了最大的应用设计灵活性。不像位图(bitmap)内核,任意数量的任务都能共享同一个优先级