wxj1952
发表于 2007-12-1 17:29
一道题终结拥OS与反OS之争
这是一个实际应用的例子。实现目标:<br /><br />1、用单CPU做一个精确的时钟。<br />2、以此时钟为基准,每秒钟运行一次一个500ms开销的任务,设其为F05()。<br />3,每分钟到达时,运行一次4个紧密关联的函数,每个运行开销700ms, 设其为F071(),F072(),F073(),F074();要求4个函数必须顺序运行。<br />4、为简化题目,只做秒、分2位。<br /><br />要求:各函数时间开销严格,运行期间不允许打断(即不允许被中断或抢占)。<br /><br />叙述一下这个题目的意思,当每分钟到达时,程序运行F071~F074,这段时间软件耗费至少700msX4=2.8秒,这样时钟的秒位肯定要丢数(因为“要求”说了,F071~F074运行必须顺序,不允许抢占。可以被调度)。怎么解决?<br /><br />高手总说裸奔比OS灵活的多,我特别希望高手能实际“奔”一个简明而优雅的程序供我们欣赏/学习一下,否则总让人感觉我们国人喜欢说大话、空话,特没劲。<br /><br /><br />12月3日<br />hotpower 是真正有才能的人,他已经把这道题的题意和解法基本说穿了。我不用再多解释题意了:<br /> 1、83楼: 不能打断的(函数)时间必须小于节拍时间,字谜(解决方法)实际在函数的间隙上。 <br /> 2、N楼 只要不出现时间的误差积累,就应该"算准"。否则就别玩了。<br /><br />12月4日<br />贴到其他贴去忘了说了,3000元求助实用程序。<br />别说我题意不清故意刁难谁,老板的课题就是这么出的。我没觉得他刁难我,挺清楚的。看不懂的人就不用作了。<br /><br /><br />“这道题如果OS能做到,匠人也能裸奔做到。”没错,那么请现在就做。<br />“裸奔高手必然也会用OS。”没错,那么请立即就做。<br /><br />要是高人都放弃了,我就贴答案了。<br />“不是做不到,而是想不到。”<br /><br />看不懂题意的人,最好保持沉默。<br />
hq_y
发表于 2007-12-1 17:42
沙发~~~~~~~~
俺也裸奔一下~~~~~~~~~~https://bbs.21ic.com/upfiles/img/200712/200712117449370.jpg
农民讲习所
发表于 2007-12-1 17:45
题都不会出。先沙发~~~~~~~~
hq_y
发表于 2007-12-1 17:46
向所长说声抱歉了;强贴要留名啊~~~~~~顾不得了~~~~~
农民讲习所
发表于 2007-12-1 17:47
我也是留个名
到此一游。
hotpower
发表于 2007-12-1 17:50
晕!!!所长抢沙发的水平太差了~~~哈哈~~~俺不参与此题目
因为俺2个都赞成,要看实际应用和硬件配置等问题...
huangqi412
发表于 2007-12-1 17:53
路过
农民讲习所
发表于 2007-12-1 17:54
俺也不出手,最近心情不错,没必要去砸砖。
happystar
发表于 2007-12-1 17:55
沙发
那个楼盖的好高,嘿嘿,我看了一下阅读了8888次,特记录:<br />○ 带os到底比不带os有哪些优势? (352字节) doob 306 8888 11-30 22:15
john_light
发表于 2007-12-1 17:58
题目代表了什么?
最多也就是某种(或几种)需求,就能决定生杀?
平常人
发表于 2007-12-1 18:01
还是画个坐标图描述一下你的要求吧
你这样写,所长都看不懂,更不用说其他人啦。<br /><br />叫人裸奔,也要说清楚去哪里,总不能满街跑让人看笑话。
hotpower
发表于 2007-12-1 18:04
只要秒脉冲不丢失,俺"黑奔"都不在话下~~~
https://bbs.21ic.com/upfiles/img/200712/20071211840452.jpg
mohanwei
发表于 2007-12-1 18:23
系统工程……实现的方法有N种,不同水平不同资源下
出来的最优方案是不一样的……明白这一点就好了。<br /><br />
computer00
发表于 2007-12-1 19:04
这个OS更加做不到了,除非你不让你OS调度...
2.8s不能被打断,也就意味着你的系统时钟节拍必须大于2.8s,否则必然被时钟节拍中断打断~~~~~~~~<br /><br />另外,题目本身就是矛盾的,要求2.8s不能被打断,又要求每秒执行另一个任务500ms?<br />除非你的CPU是双核的...
wxj1952
发表于 2007-12-1 19:09
还是没看到一个不说空话的.
可以这样,可以那样,不讲空话好吗?<br /><br />如果谁舍不得时间,我出3000元好了.我从不说空话.版主同意的话,我先把求助金放在他那好了.
hotpower
发表于 2007-12-1 19:13
哈哈~~~说钱就见外了~~~但是菜农对此不感兴趣~~~
<br /> 相关链接:<a href='http://www.**/blog/hotpower/'>http://www.**/blog/hotpower/</a>
machunshui
发表于 2007-12-1 19:13
楼主错了
楼主错了.<br /><br />os也不过是C代码组成的,OS能完成的裸奔都可以,大不了仿一下OS吗.<br /><br />问题是有些人,觉得复杂任务关系情况下,自己的裸奔比OS好是不对的.
农民讲习所
发表于 2007-12-1 19:13
坐在沙发上的建议
建议LZ用OS做个程序先摆上来,让那些大佬用黑体实现你的功能。这样互相不扯皮,沙发也舒服。
hotpower
发表于 2007-12-1 19:17
OS和裸奔根本的不同就是任务的调度和切换方式
wxj1952
发表于 2007-12-1 19:23
我知道圈圈会提这样的问题。
<br />我说的是不允许抢占,4个函数是由一个长任务分解得到的。它们将被调度器顺序调度,如果这道题变成秒位任务可以优先打断这个长任务,那还值得做吗?<br /><br />如果不想做,就别先挑出题的人的毛病,说出题人的语文水平太差。
页:
[1]
2
3
4
5
6
7
8
9
10