BBS水木清华站∶精华区

发信人: nudtbegger (军人), 信区: Linux 
标  题: Re: 关于LINUX的质量质疑 
发信站: BBS 水木清华站 (Thu Jul 29 15:28:36 1999) WWW-POST 
 
【 在 suxm (笨笨@我很土,但是我很搞笑) 的大作中提到: 】 
 如果情况属实,那OSS界会给MS好评的。 
 MS定会大力宣场一下自己的open精神, 
 这么长脸面的事怎么不见MS提及呢? 
 你所指的资料在哪里?公开一下以增强说服力好吗? 
 
咳,好象我在说谎似的,你要是看过WDJ,从97年到99年最近一期,几乎 
每一期上都有广告。或者我干脆给个地址给你吧,免得去翻WDJ了。 
www.imagination.com。现在好象类似的产品多了起来,我一个同学 
又告诉我说,好象什么地方看到说MS要公开HAL的SOURCE,也不知道是 
不是真的。 
 MS官方公布的是30ms(可查阅MSDN或walter oney及hazzen kazzen 
 的著作),如果再小一些,就无法保证系统的稳定性。 
 NT嘛,MS公布的是10MS(可查MSDN和David A.solomon的著作,这些著作都是 
 MS出版的,参见下面的文字)。 
 不知你的数据出自何处,如果是你自己试出来的,那请描述一下 
 试验的具体细节。 
 如果你仔细读一下你RE的文章,你会发现,在这点上,我与你的看法是一致的。 
 win95用作远程客户端是比较合适的。 
我有点搞糊涂了,我怀疑我和你说的不是一个概念,我在无数本书上都看到 
95是每20ms重新计算一次优先级什么的。NT好象还是预先级越高,时间片就越小, 
最小的是4ms 呀,我回去要仔细的查查。 
 
 
 呵呵。我是清华食堂收泔水的。不敢与兄台并论。:-) 
                     看来情话真是藏龙卧虎啊  :-) 
 系统是否能重入只是实时性能的一个方面。 
但是是必要条件呀 
 用户线程对于系统资源的控制程度是不可忽视的另一方面。 
 在保护模式下,i386分为ring 0---ring 3四个权限级别, 
 系统的线程始终是处于ring 0的最高级别, 
 用户的控制线程最高也就能到ring 0级,在这种情况下, 
 用户的控制线程与系统线程处于同一级别(这种系统线程还不在少数), 
 这也就是说用户的控制线程和系统线程的地位最多是平等的而不可能 
 有什么特权。系统调度算法对于这些ring 0线程是公平的。 
 所以,同一个CPU至少得由这些ring 0线程平等分享, 
 用户的的控制线程始终是要受到系统线程的干扰。 
 NT下线程有32个级别:16个real time level,15个variable level, 
 1个用作zero page的system level。 
 在NT下,用户的线程至少有两个级别,base级和current级, 
 而且NT在必要的时候是会自动在base和current级之间调整用户线程的 
 级别。既使用户线程被设置为real time level,系统还是 
 会在必要的时候在16个real time level之间进行调整,一旦系统当中 
 有更高级别的系统线程,用户线程的实时性如何保证? 
 再说,NT在什么时候调整用户线程的级别是无法预料的,对于这样的"实时性", 
                            应该可以预测吧....??另外,NT只是FIRM (SOFT?) 
RT,不能和RT-LINUX比。 
 你放心吗? 
 总之,NT不会把系统资源全部交给用户线程, 
 这与NT宣称的C2安全级别太相悖了。 
 而DOS在这方面却不同,DOS APP可以控制系统的全部资源, 
 这也是DOS不安全的原因之一,随便一个TC写的程序就可以把系统搞死, 
 但是如果程序写得精巧一些(主要是针对系统重入),可以实现非常好的实时性。 
 至少现在国内作工控的企业绝大多数是用DOS来实现控制的,他们想换到 
 GUI下主要是为了讨好用户,为了更方便用户使用, 
 而不是因为实时性不够。 
 OK。有个概念搞混了。可能是我没有说清楚,把quatum和clock interval搞混了。 
 一般来说,我们把quatum 叫作时间片。你所说的时间片动态调整是指quatum 
 的调整。我指的动态调整时间片是指clock interval的动态调整。 
 缺省情况下,NT workstation的quantum最小是6,Nt server的quantum最小是36。 
 每一次clock interrupt都使当前线程的quantum减小3。 
 所以在NT workstation下,线程最少要运行2个clock intervals, 
 而在NT server下,线程最少要运行12个clock intervals。 
 不同的硬件下,clock intervals是不同的。i386下,clock interval = 10ms, 
 在DEC alpha AXP下,clock interval = 7.8125ms。这是固定不变的。 
 这也就是说,i386下,系统延时至少是2个clock interval,即20ms。 
 NT的时间片动态切分是指quantum是可以变化的。 
 KURT的时间片动态切分主要是指clock interval可以调整。 
 后者可以达到us的量级。在i386下系统硬件时钟理论上可以达到 
 18.2 * 65535 HZ。 
 
oh? really?没用过RT-LINUX,惭愧惭愧。实际上,要更高也是可以的呀, 
PC上有3个(有点忘了)8253,还有没用的,可以..... 
 
 上面的数据请查阅David A.Solomon的Inside Windows NT 第二版 
 page 195页。这是MS出版的读物,别告诉我MS在说谎。 
 是啊。我也这样问自己呀。可能是想作远程控制吧,DOS的网络性能先天不足。 
 或者想迎合大众口味,在WINDOWS下作控制,搞个 国内首创 的名头? 
 这个想法有人在两年前就开始尝试了, 
 这可不对了。看来你对LINUX还是有成见。 
我对LINUX是有点看法,不过是不是成见很难说呀。前年(?)最火的时候,铺天盖地的 
 
都是一篇叫好声,居然还有人说在LINUX下运行WIN程序比要95下还快,而且大家 
多半都拿NT来做对比,极力嘲笑MS,当时我挡不住疑惑,装了一个,感觉实在不 
是很好。而且,我对LINUX的开发模式也持保留态度,(效率不高)什么时候LINUX的应用 
能 
上桌面,有了OFFICE FOR LINUX的时候我才服气。 
 别人的经验教训都值得借鉴一下。 
 再说一次,你现在的尝试,有不少人在两年前就开始了。 
 但是现在还是没有结果,据我所知,大多转向了RTLINUX。 
 
看来我是要装个RTLINUX看看了。 
 
 
 
-- 
※ 来源:·BBS 水木清华站 bbs.net.tsinghua.edu.cn·[FROM: 202.197.0.1]  

BBS水木清华站∶精华区