免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: kingink1983
打印 上一主题 下一主题

请问,有人在学习研究RTOS-uC/OS-II吗? [复制链接]

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
11 [报告]
发表于 2008-09-16 14:09 |只看该作者
原帖由 eveson 于 2008-9-16 13:34 发表
我觉得应该开个实时嵌入式操作系统的板块


我也比较赞成!

论坛徽章:
0
12 [报告]
发表于 2008-09-16 14:23 |只看该作者
原帖由 dreamice 于 2008-9-16 14:01 发表
我简单说一下关于这个表的作用及构造算法(一次面试中被问到,惭愧没答出来 )。
作用:找出优先级最低位为1的位置。大家知道,优先级越高,其数值越小,所以,在这里也即找出优先级最高的位置。
算法:
( ...

解释的很详尽,谢谢!

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
13 [报告]
发表于 2008-09-16 14:30 |只看该作者
原帖由 kingink1983 于 2008-9-16 14:23 发表

解释的很详尽,谢谢!


不知兄弟为何研究这个操作系统?纯属学习还是工作项目?如果有不错的OS基础,这个操作系统两个月完全可以搞定了,呵呵。我觉得任务调度,内核一些同步与通信机制,内存管理(这个比较弱一些),以及2.8内核以后添加的定时器机制,都可以从源代码深入理解一下其实现。结合邵贝贝译的那本书,好好看看,收获一定不小的。

论坛徽章:
0
14 [报告]
发表于 2008-09-16 15:26 |只看该作者
ucos的内存管理可以采用静态的方法来分配。ucos还有一个功能是可以统计内存的用量,通过调试能够获得内存的用量。高版本的ucos能够建立达到256级的任务。
这里是Linux论坛,不知道哪里有ucos论坛?

论坛徽章:
0
15 [报告]
发表于 2008-09-16 15:58 |只看该作者
原帖由 dreamice 于 2008-9-16 14:30 发表


不知兄弟为何研究这个操作系统?纯属学习还是工作项目?如果有不错的OS基础,这个操作系统两个月完全可以搞定了,呵呵。我觉得任务调度,内核一些同步与通信机制,内存管理(这个比较弱一些),以及2.8内核 ...

学习其原理,掌握实现方法。以备将来用的着。惭愧的说操作系统原理我原来也学过,不过当时就是听听一些理论,完全不知所云,学的时间长了,很多东西原来不但没消化,现在还望了不少,
现在学习ucos主要是学习它的原理、看见你说“有不错的OS基础,这个操作系统两个月完全可以搞定”,觉得至少我是搞不定 ,不说别的了系统级的了,就那些指针强制类型转换,特别是二级的,我理解就挺麻烦的了,差距有点大,抓紧学习 。

[ 本帖最后由 kingink1983 于 2008-9-16 16:03 编辑 ]

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
16 [报告]
发表于 2008-09-16 16:12 |只看该作者
原帖由 kingink1983 于 2008-9-16 15:58 发表

学习其原理,掌握实现方法。以备将来用的着。惭愧的说操作系统原理我原来也学过,不过当时就是听听一些理论,完全不知所云,学的时间长了,很多东西原来不但没消化,现在还望了不少,
现在学习ucos主要是学习 ...


指针问题,是C语言的基础问题。
相信通过这个os的学习,对c语言能力会有很大提升的,毕竟因为其短小精干,所以可以透彻的去理解它。
fazi 该用户已被删除
17 [报告]
发表于 2008-09-19 12:59 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
18 [报告]
发表于 2008-09-20 11:06 |只看该作者

回复 #9 dreamice 的帖子

九楼的算法很好。
我对 OSUnMapTbl[] 的理解是这样的,OSUnMapTbl[x] 的返回值 就是查出数值x  从右到左第一个 ‘1’ 所在的位数。比如 (000000001)b 就是第 0 位 (10000000)b 就是第 7 位
所以 OSUnMapTbl[(000000001)b ] = 0; OSUnMapTbl[(10000000)b ] = 7;
特别的 (00000000)b 没有一,所以就约定 OSUnMapTbl[(00000000)b ] = 0; (我是这样理解的)
有什么不对的地方请指正。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP