打印

裸奔和os其实没啥可争的

[复制链接]
楼主: wangkj
手机看帖
扫描二维码
随时随地手机跟帖
81
forthlab| | 2007-12-18 15:48 | 只看该作者 回帖奖励 |倒序浏览

用longjump的我也试验过,

用longjump的我也试验过,但并不好用,比如兼容性不好,同样的程序,换个CPU又不行了.因为各个CPU实现的不一样.在一个子程序内跳转还可以,如果跨越子程序,基本很危险.
所以77楼的后面也说有不少限制.
在网络上找找,有不少用longjmp做任务切换的例子.

使用特权

评论回复
82
gouki_s| | 2007-12-18 16:41 | 只看该作者

setjmp,longjmp

自动放弃cpu, 协作式os.

不过要小心局部变量。
把每个任务的sp分开

使用特权

评论回复
83
不起眼| | 2007-12-18 16:53 | 只看该作者

哈哈,盯着俺的开裆裤干吗?

    longjmp是c的标准函数,它本身就是为线程跳转用的。子程序内跳转用goto就行了。
    后面的限制是由于c51内存分配机制决定的。在pc上就没有以上限制。

使用特权

评论回复
84
gouki_s| | 2007-12-18 16:59 | 只看该作者

我是菜鸟

如果任务调用子程序,子程序能直接跳到别的任务吗?还是子程序也要一个jmp_buf?

使用特权

评论回复
85
不起眼| | 2007-12-18 17:44 | 只看该作者

to:gouki_s

    如果要在多任务切换,不要在子程序里面用噢。
    如果不是做多任务切换,整个程序用一个jmp_buf. 可以随意跳转。我回答的对么?

    其实看得出,你才是高手 

    其实我贴它的用意是,不用OS也可以完成多任务切换。我用的是汇编版本,汇编版本在子程序里也是可以的。其实俺压根也没把这看成OS,也就是一件紧身衣。 

使用特权

评论回复
86
dld2| | 2007-12-18 20:01 | 只看该作者

都是同年同月同日生的老妖啊

使用特权

评论回复
87
shuangcong| | 2007-12-19 08:09 | 只看该作者

无所谓好坏

不过要是你有丰富的资源,OS在你的系统里面的开销可以忽略,那不用OS是不是有点傻,而且还会带来太多的不方便

使用特权

评论回复
88
不起眼| | 2007-12-19 10:33 | 只看该作者

哈哈

    如果一个操作系统做的非常非常非常非常完善,资源巨多,以至于您只需要点几下鼠标就可以完成一个产品。您认为您还有饭吃么?您的饭都给OS吃了?除非您遇到了一位宽厚的老板。

    做设计的最主要的是要有自己的东西,您自己的东西是什么?就几行程序代码么?你会,大家都会。
    
    当然俺说这番话也不是绝对不用别人的东西,而是说要尽可能多的作出些自己的东西。

    说到不方便,呵呵,那个操作系统不是框框套框框。俺不相信,您不看几本厚厚的书,就会用OS.
    
    俺比较同意搂住的意思。不要为OS而OS.“我死”这个词不怎么吉利。即便“我死”也要死的有价值,有必要。 
    

使用特权

评论回复
89
wangkj|  楼主 | 2007-12-19 11:53 | 只看该作者

不要为0s而os,也不要为裸奔而裸奔

使用特权

评论回复
90
不起眼| | 2007-12-19 12:09 | 只看该作者

搂主:您认为我是在裸奔么?

    求您给个结论:俺是在裸奔还是在OS


   

使用特权

评论回复
91
孤独泪| | 2007-12-19 12:14 | 只看该作者

适合的才是好的

使用特权

评论回复
92
wangkj|  楼主 | 2007-12-19 15:07 | 只看该作者

上床就得裸,出门别忘了穿衣服 hehehhehe

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则