uC/OS是一个微型的,可移植,固化,剪切的抢占式实时系统,支持多任务管理,广泛用于商业产品开发。
ucos是一个操作系统,但归根到底,也不过是一个支持任务切换的裸机程序。
ucos系统通过不断产生定时中断,或任务主动放弃CPU控制器,然后进行任务调度,相当于不断循环执行不同的函数(即任务),最终实现各种功能。
通俗地讲就是一个大一点的,支持任务切换的裸机程序就可以了。
ucos的一般main函数结构
void main(){
.......
OSInit();//初始化ucos
OSTaskCreate(Task1,......);//创建用户任务1,至少创建一个
OSTaskCreate(Task2,......);//创建用户任务2
......
OSStart();//启动多任务管理
......
}
这就是UCOS的初始化流程,main都是这样的结构。
显然ucos操作系统与裸机程序的最大不同点就在于ucos有任务调度,可以根据任务的重要程度(优先级)优先执行重要的任务,从而能确保及时处理最重要的数据。