搜索
bottom↓
回复: 12
打印 上一主题 下一主题

ucos-ii 就绪表(ready list)看不懂

[复制链接]

出0入0汤圆

跳转到指定楼层
1
发表于 2008-8-25 08:28:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
能不能简单形象的说明下是怎么查表的?
再具体解释下这几个含义,是由什么英文缩写的?
OSRdyTbl[]
OSRdyGrp
OSUnMapTbl
其实我对ucos为什么要查表我没弄明白,不是说64个任务么,那我直接把1~64个值放到表里面,再查找好了。为什么还要经过这么复杂的换算?
知道的老师给我点拨下,谢谢。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。

出0入0汤圆

2
 楼主| 发表于 2008-8-25 14:00:40 | 只看该作者
up

出0入0汤圆

3
发表于 2009-9-13 10:04:22 | 只看该作者
不通过查表,肯定是可以的。通过查表的主要目的是提高处理速度。

出0入0汤圆

4
发表于 2009-9-14 10:01:52 | 只看该作者
其实那本书里面讲的很清楚了,可以再去复习一下,查表的时间固定,任务的多少不影响,很多操作系统都用这样的方式,rt-thead,ecos等。

出0入0汤圆

5
发表于 2009-10-2 22:11:32 | 只看该作者
OSRdyTbl[] 是存放8组任务的数组,每一组是一个变量,变量的每一位对应该组任务的相应的优先级任务,OSRdyGrp是个8位的变量,他的没一位代表一组任务的就绪状态,如果这组任务中有一个任务就绪了,那么相应的这组任务的对应的位就置位。OSUnMapTbl是为了查找现在就绪的任务中哪个任务的优先级最高而使用的查找表

出0入0汤圆

6
发表于 2009-10-2 22:38:11 | 只看该作者
OSRdyTbl[] 保存所有任务的就绪状态,从OSRdyTbl[0]的第0位一直到OSRdyTbl[7]的第7位表示64个任务的就绪状态。

任务切换时就是要从这个表里面找到已经就绪的优先级最高的任务,即从这个数组中找到被设置为1的且最靠前面的是哪一位。

简单的算法是逐个测试这64位,但是这非常慢,OSRdyGrp 和 OSUnMapTbl[]就是为了加速查找的过程。

出0入0汤圆

7
发表于 2009-10-11 12:39:05 | 只看该作者
这部分就是比较难懂,看了几遍但是还是模模糊糊的
再研究一下,应该慢慢的就理解了

出0入0汤圆

8
发表于 2010-4-15 18:59:50 | 只看该作者
同感啊,不明白

出0入70汤圆

9
发表于 2010-4-15 22:16:09 | 只看该作者
优先译码的真值表而已

出0入0汤圆

10
发表于 2010-4-16 11:05:22 | 只看该作者
固定任务切换时间,典型的空间换时间操作!

出0入0汤圆

11
发表于 2010-5-3 22:44:21 | 只看该作者
顶一下,明白的讲一下,谢谢了啊

出0入0汤圆

12
发表于 2010-12-14 10:36:52 | 只看该作者

出0入0汤圆

13
发表于 2010-12-14 10:53:38 | 只看该作者
74HC138的真值表你懂么?你是否意识到使用存储器可以模拟74HC138这个芯片的逻辑行为?再进一步想下去“可编程逻辑(CPLD/FPGA)”这种东西的原理未必复杂吧?再进一步想下去“用软件模拟硬件”就不那么神秘了吧?
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-19 14:25

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表