很多客户的产品逻辑关系十分复杂,实时性的要求较高,就会变得难以驾驭,容易出BUG,这时候就需要划分模块,划分了模块,就需要处理模块间的协调,资源分配,合理分配CPU时间,这些问题,再有RTOS的参与下,会变得简单些, 单片机上跑的操作系统比较常见的是RFEE RTOS和UCOS,个人更加倾向于FREE RTOS:
一、freeRTOS比uCOS II优胜的地方:
1。内核ROM和耗费RAM都比uCOS 小,特别是RAM。 这在单片机里面是稀缺资源,uCOS至少要5K以上, 而freeOS用2~3K也可以跑的很好。
2。freeRTOS 可以用协程(Co-routine),减少RAM消耗(共用STACK)。uCOS只能用任务(TASK,每个任务有一个独立的STACK)。
3。freeRTOS 可以有优先度一样的任务,这些任务是按时间片来轮流处理,uCOSII 每个任务都只有一个独一无二的优先级。因此,理论上讲,freeRTOS 可以管理超过64个任务,而uCOS只能管理64个。
4。freeRTOS 是在商业上免费应用。uCOS在商业上的应用是要付钱的。
由于附件太大,需要的朋友可以留言;
|