标题:
刚接触ucos,有点初步想法不知道合不合适,望大家指点
[打印本页]
作者:
qinshuai
时间:
2018-9-8 10:53
标题:
刚接触ucos,有点初步想法不知道合不合适,望大家指点
本帖最后由 qinshuai 于 2018-9-8 15:42 编辑
ouos是基于任务优先级与中断的抢占式实时内核,可以保证系统的实时性。
ucos-2
同一个优先级只能分配给一个任务,
并不能实现多任务的并行处理
,cpu同时只在一个任务里跑。有点类似于裸机上的中断嵌套方式。
感觉有ucos-2的就是把裸机程序上面比较复杂绕人的函数之间有条件的调用,使用,的过程给集合封装起来,成为一个操做系统,使得你自己写的程序看起来更清晰,写起来方便一些。
ucos-3
支持多个任务处于同一优先级,用时间片轮转的方法,
实现了多任务的并行处理
。
这两天刚接触ucos,头疼,产生了这点认识,但是苦于不知认识的是否合理,
头疼,
希望各位前辈指点迷津。
作者:
tt123
时间:
2018-9-8 23:21
本人没接触ucos,但接触过ftreeRTOS,POSIX。
所谓的RTOS,万变不离其中,要实现都是任务调度。
确保重要任务得到第一时间的处理。
一有多任务的时候,就一定需要任务彼此间的同步,沟通,所以要有相关函数去处理,如message queue,semaphore,mutex等等。
有一个概念你需要重新理解。
所谓的并行处理,是说同一时间,同时执行。
按照这个定义,现在的mcu,严格来说都不能做到并行处理的。
而所有的rtos做的是都是用时间片轮转的方法,
去模拟多任务并行处理
所以ucos-2都可以实现多任务调度,只不过是不能在同一优先级执行多个任务,而ucos-3是可以的
例如,在某一段时间,一个优先级为1的A任务在执行中,此时优先级为1的B任务想要执行
ucos-2就会说:B任务,你不能执行,你要先等A完成。
ucos-3就会说:OK,B任务你来吧,跟A一起共用执行时间。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1