引用: 辛昕 发表于 2015-2-12 11:20
我看过 作者的博客
他是刻意把任务限定死的,而且也没必要做成链表,以支持动态创建。。
其实觉得他说的也不是没有道理。
关于 没必要动态创建,我觉得有一定的道理。
但其他的我觉得则要深入看了才知道。
但不可否认,任务间的通信确实很难把握。
我自己工作的这个也是,名义上是用了操作系统多任务,但实际上任务通信机制没用上。靠的一个FLASH的记录。
这个怎么说呢。我这个帖子上传的是51版的,51版本的还是属于前后台架构,没有任务的说法。而基于32位单片机的那
个版本才有任务的说法。这个版本由于原来是可以支持八个任务的,后面由于需求的原因改成了两个任务(menu和logic),也
不是做成链表吧,他文档里说的那个是为任务切换服务的,并不是用于任务创建。
还有 任务间的通信 在基于32位单片机版的msOS里面得到了很好的解决,他里面采用的是数据库的思想。这是怎么一回
事呢。是这样子的,首先在这msOS里面,又两个任务,一个界面任务(menu)、一个是 逻辑任务(logic)。
界面任务负责对数据进行显示。而逻辑任务负责数据的更新。系统进行运行的时候首先一直停留在优先级最低的界面任务
中,当外界进来一个消息的时候,由界面任务切换到逻辑任务进行对消息的处理,并更新数据库中的数据,消息处理完之后再切
换回界面任务,然后 menu 识别到有数据更新之后从数据库中取出数据并显示。
本帖最后由 dj狂人 于 2015-3-5 18:55 编辑