substation 发表于 2012-7-21 08:41:09

都江堰操作系统,赞一个

本帖最后由 substation 于 2012-7-21 20:37 编辑

看了作者的ppt介绍,给人耳目一新的感觉啊。
看了不少国产的开源操作系统,基本上都是这样一个模式:
写一个调度器,弄一堆与跟现有系统大同小异api,就说是操作系统,然后吹嘘说这个操作系统有多先进。
然后再移植一堆开源的外围模块,总忘不了加上一句”有改进“。
操作系统发展那么多年,技术早就成熟了,新的大同小异的操作系统,能有多先进?我是不信的,说不定你引以为豪的所谓改进,是人家认真评估后抛弃掉的技术呢。
再说外围模块,在现有操作系统下就运行得好好的了,需要新的系统吗?开源作品的特点,大多文档很烂,你对系统都吃透了吗?移植到一个新系统上,你解决水土不服的问题了吗?贸贸然改进它,还不知会不会带来新问题呢。
这样的,做个开源项目,大家研究一下,实战学习一下操作系统原理和实现,爱好者乐一乐,非常有价值。
但有些操作系统,大张旗鼓地拿来推广应用?拜托别把玩笑开大了。
借djyOS一句话:”你新操作系统成熟度比不过别人,实现的又是跟现有系统大同小异的功能。”拿来推广,哪个小白愿意上当?

打拼音,把都江堰打成大脚丫了,并非故意,抱歉。

cqfeiyuxmj 发表于 2012-7-21 11:10:57

链接有不?

tiancaigao7 发表于 2012-7-21 11:17:55

本帖最后由 tiancaigao7 于 2012-7-21 11:20 编辑

人家叫都江堰好不好?不要乱起名字。并且都江堰系统的原理和传统系统类似,不过是系统本身执行的操作更多了,为每一个事件自动分配一个线程。这个时间结束,线程也跟着结束一样,因此不要盲目崇拜一个系统,都江堰系统很好,而且和其他的系统如ucosiii,RTT一样好。

wenjin0386 发表于 2012-7-21 11:29:56

大脚丫 ==都江堰 ??
楼主 改个标题吧。这个容易引起混乱。。

opoop130 发表于 2012-7-21 11:46:43

然后再移植一堆开源的外围模块,总忘不了加上一句”有改进“。这句很经典

xlwq 发表于 2012-7-21 11:50:03

哇靠!djy大脚丫 {:lol:}

catx 发表于 2012-7-21 11:56:44

{:sweat:}大脚丫。。。。

XIVN1987 发表于 2012-7-21 13:21:55

tiancaigao7 发表于 2012-7-21 11:17 static/image/common/back.gif
人家叫都江堰好不好?不要乱起名字。并且都江堰系统的原理和传统系统类似,不过是系统本身执行的操作更多了 ...


是这样子啊!!!动态分配线程是不是比UCOS那样的手动划分更消耗资源啊???

山外メ雲ジ 发表于 2012-7-21 13:30:01

XIVN1987 发表于 2012-7-21 13:21 static/image/common/back.gif
是这样子啊!!!动态分配线程是不是比UCOS那样的手动划分更消耗资源啊??? ...

应该会更多的内存碎片……

djyos 发表于 2012-7-21 13:50:36

山外メ雲ジ 发表于 2012-7-21 13:30 static/image/common/back.gif
应该会更多的内存碎片……

呵呵,大脚丫,差点连我都被忽悠了,以为一个新操作系统呢。
不过这名字起得不错,djyos不就是靠两只脚丫子,一步一步走过来的嘛。
PS,应该是拼音惹的祸吧。

事实上不会有内存碎片:
1、对于不含虚拟内存管理的系统,所有事件都会在register事件类型时分配一个线程,这足以保证在绝大多数情况下,不会发生线程动态分配。
2、对于优先级高于128的事件类型,为了避免分配线程带来的延迟和不确定性,也在register事件类型时分配一个线程。
3、djyos为了动态分配线程,专门写了一个无内存碎片、快速的内存分配算法。

surf_131 发表于 2012-7-21 14:06:06

大脚丫,不好。暗示是瘸子。两只以上脚才好一步步行走。
打酱油,好。暗示(明示)多此一举,让有兴趣者来探索。当然,打铁还须自身硬,特性果真优秀,就无人能挡。

tiancaigao7 发表于 2012-7-21 14:08:31

djyos 发表于 2012-7-21 13:50 static/image/common/back.gif
呵呵,大脚丫,差点连我都被忽悠了,以为一个新操作系统呢。
不过这名字起得不错,djyos不就是靠两只脚丫 ...

大侠,详解这个帖子问一个疑问。首先,如果我定义了一个事件,并且编写了一个事件处理函数。那么在这个事件发生过一次之后,对应这个事件的线程状态是怎样的?是结束,还是挂起?如果是结束,下次事件发生,在重新启动这个事件,那么还用不用重新注册?因为以线程为基础的OS,在线程结束之后,对应的资源会被回收,下次必须要重新注册才能启动。如果是挂起,那么您的这个OS,适不适合我自己,每个时间建立一个线程,然后通过挂起来释放CPU的性质一样呢?

AWEN2000 发表于 2012-7-21 14:08:58

还是省省力吧
作为业余爱好还行,其他就免了
木有前途的

Soul.art 发表于 2012-7-21 14:35:01

我们应该支持啊。

就像我们穿衣服一样啊,
比如我们的裤子,细腿裤,直筒裤,七分裤,长裙,短裙,超短裙,都是围着我们的双腿转。不同的人穿不同的款式嘛

一个90斤重的美女穿着超短裙站你面前晃悠,你肯定俩眼放光
一个180斤重的蛋白质穿着超短裙站你面前晃悠,你肯定口吐白沫

djyos 发表于 2012-7-21 14:42:17

tiancaigao7 发表于 2012-7-21 14:08 static/image/common/back.gif
大侠,详解这个帖子问一个疑问。首先,如果我定义了一个事件,并且编写了一个事件处理函数。那么在这个事 ...

这个问题问的好。
djyos的事件类型,分两类,一类叫关联型(以枚举常量enum_correlative表示),表示先后发生的该类型事件是有关联的,例如串口接收,必须按顺序收数据,才能正确解包。
另一类是独立型(以枚举常量enum_independence表示),表示先后发生的该类型事件没有关联,例如web服务,每个服务可以独立响应。

还有种应用,比如闪灯事件,该类型的事件,从开机到关机,是不会返回的,也应该被设置成关联型事件。

对于关联型事件,处理函数的写法,一般是:
while(1)
{
    do something;
   djy_wait_evtt_pop(djy_my_evtt_id(),1),cn_timeout_forever;
}
串口接收中断第一次弹出事件后,线程就会得到执行,处理完数据后,在djy_wait_evtt_pop函数处阻塞;中断中再次弹出事件时,线程会得到一个“通知”,线程继续执行。
就算执行函数返回了,如果你这个线程优先级高于128,或者在不支持动态内存的计算机上执行,线程不会被删除,下次中断弹出事件后,会立即投入运行。

对于独立型事件,则每次弹出都会新创建事件,由新线程处理。这时候,djyos的另一个突出特点:天然的线程池功能就显示出威力了。
事件类型的参量:
vpus_res;   //系统为本类型事件保留的数量
vpus_limit;   //本类型事件允许同时拥有的线程个数
vpus;            //本类型事件已经拥有的线程个数
比如在web服务器中,web服务很繁忙时,系统会给它分配较多线程,使每次请求都能立即得到线程。web服务不繁忙时,仅保留最低数量的线程,甚至只有1个或0个,取决于vpus_res;的取值。

yurinacn 发表于 2012-7-21 15:19:26

我只是随便看了下djyos,感觉和javascript和nodejs思想差不多呢。。。基于事件的,你写好所有的事件处理函数,然后等待事件发生就行了。不过c或c++的是不是适合这种写法呢。。。

GNMXD 发表于 2012-7-21 15:34:46

还以为又来了个新的操作系统,,,

原来 djy ,你给解释为 大脚丫 了,,,

djyos 发表于 2012-7-21 15:42:03

yurinacn 发表于 2012-7-21 15:19 static/image/common/back.gif
我只是随便看了下djyos,感觉和javascript和nodejs思想差不多呢。。。基于事件的,你写好所有的事件处理函 ...

djyos的创新在于,把这些本来只能在非实时系统用的东西,搬到了RTOS上,适合于c语言。而且,丝毫没有降低效率和实时性,例如djyos拥有世界最高的中断实时性。

daleda 发表于 2012-7-21 15:47:37

没用上。。

sk_2006_ren 发表于 2012-7-21 17:29:14

支持一些优秀的应用很快就能推广,应该有国产的系统,不然大家要高价买别人的."大脚Y"这个外号其实可以用,有点特色.

jz701209李 发表于 2013-5-7 21:19:25

路过.........学习一下....

刘木杉彬 发表于 2013-7-7 20:10:48

想要打造一个世界级的操作系统,首先就得把现有操作系统的概念抛弃。不然别人已经研究的很好的东西再拿来改,是很难超越的。只是小修小补。

Mr_li 发表于 2013-8-16 15:18:58

刘木杉彬 发表于 2013-7-7 20:10 static/image/common/back.gif
想要打造一个世界级的操作系统,首先就得把现有操作系统的概念抛弃。不然别人已经研究的很好的东西再拿来改 ...

这个同意

东海傲虾 发表于 2013-8-17 11:47:20

就是不知道都江堰的稳定性怎么样,
页: [1]
查看完整版本: 都江堰操作系统,赞一个