原创 关于HotBIOS强实时的讨论和菜农的解释

2008-6-26 20:54 2978 4 4 分类: 处理器与DSP

http://bbs.21ic.com/club/bbs/list.asp?boardid=11&t=3011849


hotpower 发表于 2008-6-26 20:51 侃单片机 ←返回版面 按此察看该网友的资料 按此把文章加入收藏夹 按此编辑本帖


19楼: 感谢楼上各位参与技术讨论


我下午对研究生小朋友有陈述了一遍我的思路。
就一张联络图,里面根本没有任何思想。
因为我这次出手OS时接坚持抛开所有理论和它的束缚。

可以说思路是强实时的。因为它不经过任何切换的过程,只需
对PC和SP的管理。

当不切换时,原路返回。
切换时,保护该任务本次断点的SP,PC,取出需要切换到任务上次断点的SP,PC.
切换需要的就是这么简单的事。

那么如何判断切换呢?

用二叉树组成任务就绪表。(每次切换都自动刷新)
因为每次进入节拍中断时,都要对sleep进行节拍+1来判别是否定时就绪。
由于有sleep二叉树,可以加快和不搜索不需要节拍+1的节点。

当被中断的任务不是任务就绪表表头时,状态自动降级。
此时任务就绪表表头节点内的任务号就是需要切换的任务。

退出判断并散转自动切换到新任务上次的断点。

那么初始化时那个“上次的断点”该是什么呢???

由于菜农任务函数里规定格式隐藏了任务测试。
故提前已经计算好首次需要切换回的“断点”---实际是虚拟的。!!!

这样在任务开始启动工作时,就假定全部任务同时都在任务环的某一固定点!!!!!!!!

这2个假定使所有任务切换的方式都归结为一种(硬件退出也被归化了)

这样首次节拍中断时,全部的任务都在任务循环里了~~~

就先讲到这里,太多大家迷糊。

总之,我讲任务的走向或未来都事先归化好了,这样节拍中断时就不在需要

处理过多的事情。

所以,我准备有时间请教我写vxworks书的教授朋友,hotbios属于什么性质的

OS....
PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
我要评论
0
4
关闭 站长推荐上一条 /3 下一条