为什么Tanenbaum在Tanenbaum-Torvalds辩论中错了?


233

最近,在我的OS课堂上,我被分配阅读Tanenbaum-Torvalds辩论的内容。在辩论中,Tanenbaum做出了一些预测:

  1. 微内核是未来
  2. x86将消失,RISC架构将主导市场
  3. (从那时起的5年内)每个人都将运行一个免费的GNU OS

辩论发生时我只有一岁,所以我缺乏历史直觉。为什么没有提出这些预测?在我看来,从Tanenbaum的角度来看,它们是对未来的相当合理的预测。发生了什么事以至于他们没有通过?


189
在预测未来时,请选择熵和运气,而不要选择创新和理想。
zzzzBov 2012年

18
在这里写了一个马拉松式的答案,涵盖了第1点。事实上,在讨论内核体系结构的差异时很难避免这种争论。最甜蜜的讽刺实际上是签名,Linus "my first, and hopefully last flamefest" Torvalds显然也未能实现:)
Tim Post

13
我将其留为评论而不是答案(我认为它不够“精致”,不能作为答案):Tanenbaum 认为Microkernels更好,x86应该离开了舞台,并且认为GNU OS 并没有错。 (无论运行在哪个内核上)都是更好的解决方案。如果他真的坚信自己会坚信这种想法会很快发生(或者根本不会发生),那可能是天真的,部分原因是社会惰性和垄断,部分原因是高效的微内核在通用系统中不那么容易实现。(是的,祝你好运
njsg 2012年

15
Tanenbaum并非完全错误:在新的PC后时代,iOS基于Mach和ARM,Android基于L4和ARM。只有GNU输了。
mouviciel 2012年

15
@mouviciel:GNU只在桌面上丢失了。服务器,移动和嵌入式几乎都是GNU垄断。
gbjbaanb 2012年

Answers:


171

微内核是未来

我认为Linus在他的辩论中指出了整体内核的观点。当然,从微内核研究中汲取的一些经验教训已应用于单片内核。微软有时曾经宣称Win32内核是一个微内核架构。当您查看一些教科书微内核时,这有点费力,但是这些声明具有一定的技术论据。

x86将消失,RISC架构将主导市场

如果从台式机和服务器上进行备份,则RISC无论如何都会在处理器市场上占据主导地位。ARM(R代表RISC)在处理器数量上胜过x86,正在使用的ARM处理器多于x86处理器,并且ARM总的计算能力大于x86计算能力。今年,单个ARM供应商(是的,Apple)可能会超过所有x86供应商的总和。仅在台式机和服务器空间中,x86占主导地位。只要Windows是台式计算机和服务器的Linux的主导平台,这可能在一段时间内仍然适用。

也有一部分b。英特尔工程师做了一些出色的工作,以缩短他们的指令集的寿命,甚至达到了使用位于顶部的操作码翻译器制作RISC内核的地步。与主要的RISC台式机芯片制造商之一的IBM相比,IBM 在合理的时间内无法为Apple笔记本电脑提供省电,高性能的G5

(从那时起的5年内)每个人都将运行一个免费的GNU OS

我认为各种操作系统供应商仍在其操作系统上提供引人注目的价值主张。GNU甚至不一定是开源社区中最重要的参与者,因此即使更广泛地采用开源软件也不一定会转化为GNU OS。但是,那里有很多GNU东西(例如,所有Mac都随附有GNU的Bash。Android手机上可能有一些GNU系统工具)。我认为,即使将视图限制在台式计算机上,计算机生态系统也比Tanenbaum预见的要多样化得多。


8
在第3点上,Linux广泛传播,可能是随后使用最多的OS,Windows和VxWorks。因此,点3可以认为是正确的。它使3分中的2分正确,考虑到IT的不可预测性,这是相当不错的。
deadalnix 2012年

11
@deadalnix-我的意思是明确提及3的范围,仅限于台式计算机。如果Google服务器场运行linux(是吗?),并且每个盒子都计入linux数量,而运行精简版linux的电缆调制解调器也算在内,而android手机也算在内,那么linux可能占主导地位。但是,尽管我看到了一段时间内出售/使用的ARM与x86处理器的图表,但是我还没有看到针对这些操作系统的图表,尤其是当您混合使用嵌入式设备时。
ccoakley 2012年

6
同样在第2部分中,各种x86现代化实际上超出了RISC几步之遥,并且在内部使用“微操作”做了一些引人入胜的工作,它们通过即时的指令重新排序提供了更好的调度灵活性,从而带来了远远超出性能的提升。 RISC参与者甚至无法想象。RISC CPU也可以做到这一点,但此时您没有将RISC与CISC进行比较,而是将各种硬件内JIT策略与相当抽象的ISA前端进行了比较。
蓬松的2012年

5
@KonradRudolph通过Google重新创造了总销售量的引用:2009年出货了30亿个ARM芯片(vanshardware.com/2010/08/mirror-the-coming-war-arm-versus-x86),而2011年估计售出了4亿个x86芯片(此处报告的季度数字是4倍:computerworlduk.com/news/it-business/3345299/…)。嵌入式市场很大,而且很大程度上不是英特尔。
ccoakley 2012年

5
我不认为Tanenbaum所说的观点3是正确的。当时,有一个很多周围GNU HURD乐观。声称Linux(任何变体)是GNU OS的胜利在历史上是无效的。用户空间?当然。但是从某种意义上说,尽管使用了GNU,但是Linux 还是赢得了内核
Regularfry12年

60

软件专家无视硬件经济学

...或“摩尔说得对,但他们俩都错了”

在这场辩论中被忽略的最大的事情是CPU制造技术和经济的影响,这是由摩尔定律所表示的晶体管尺寸缩小所驱动的(这并不奇怪,因为他们对CPU硬件了解很多,所以他们研究并辩论了软件,而不是CPU制造或经济学)。通过CPU分摊的固定制造成本(例如ISA设计,CPU设计和CPU生产设施)迅速增长,从而增加了规模经济的价值;随着每单位CPU成本(以“低价”和“瓦特”为单位)的暴跌,CPU的成本无需摊在提供价值的众多功能上,因此无需摊销。具有固定功能的爆炸了;CPU晶体管预算成倍增长,

1. CPU规模胜过CPU多样性

规模经济的重要性使得针对更大(因此更广阔)市场的ISA / CPU的收益超过了设计选择的潜在收益,这些选择可能会缩小ISA / CPU的市场。操作系统可以通过支持的ISA / CPU来满足越来越大的市场需求,因此几乎没有(甚至没有必要)进行移植练习以使OS生态系统蓬勃发展。ISA和CPU目标的问题域往往如此之大,以至于它们大多重叠,因此对于除编译器之外的任何软件,移植工作的规模也有所减少。可以说Torvalds和Tanenbaum高估了内核设计和实现中现在需要特定于ISA甚至CPU的部分。正如Tanenbaum所述,现代OS内核确实抽象了CPU和ISA之间的区别。但是,现代OS中特定于CPU / ISA的代码比微内核小得多。这些不可移植的位不是实现中断处理/调度,内存管理,通信和I / O,而是仅实现了那些服务的一小部分,甚至这些核心OS功能的绝大多数体系结构都是可移植的。

2.开源赢得了战斗,但失败了

物有所值的交易意味着固定功能产品将执行更大的计算份额,其中修改产品的能力不属于客户价值主张的一部分。现在具有讽刺意味的是,开源在这些固定功能的设备中得到了蓬勃发展,但更多时候,这些自由的好处更多地是由制造产品的人而不是最终用户来实现的(即使在那时,这在软件市场上也是如此)是开源软件的主要消费者,但他们的客户不是)。同样,有人可能会争辩说,开源在通用桌面环境中比在其他任何地方都更加挣扎,但是随着网络和云计算的发展,桌面计算已越来越多地用于狭窄的目的(主要是运行浏览器),其余功能在云中运行(具有讽刺意味的是,主要在开源平台上运行)。简而言之:开源确实拥有通用计算空间,但是市场已经变得更加复杂。计算产品包装很少会停止于通用功能,而是会继续用于固定功能的产品,因为开源计算的许多优势都与产品目标相抵触。

3. 2 n增长意味着固定的k节省并不重要

晶体管预算的指数增长使人们意识到,CISC体系结构的晶体管预算成本几乎是完全固定的。RISC的战略优势是将复杂度从CPU指令集移到了编译器中(毫无疑问,部分原因是编译器编写者从复杂的ISA中获得的收益远低于在汇编中进行编码的人类开发人员,但是编译器可以更容易地推理从数学上讲,因此利用了一个更简单的ISA);这样节省下来的晶体管可用于提高CPU性能。需要注意的是,较简单的ISA节省的晶体管预算几乎是固定的(编译器设计的开销也基本固定)。虽然固定的影响是过去预算的很大一部分,可以想象,只需要几轮的指数增长就可以使影响变得微不足道。这种迅速下降的影响,再加上前面提到的CPU单一文化快速增长的重要性,意味着任何新的ISA建立自己的机会之窗很小。即使新的ISA成功了,现代RISC ISA也不是RISC战略所描述的正交ISA,因为晶体管预算的持续增长以及SIMD处理的广泛适用性尤其鼓励采用针对特定功能调整的新指令。这种迅速下降的影响,再加上前面提到的CPU单一文化快速增长的重要性,意味着任何新的ISA建立自己的机会之窗很小。即使新的ISA成功了,现代RISC ISA也不是RISC战略所描述的正交ISA,因为晶体管预算的持续增长以及SIMD处理的广泛适用性尤其鼓励采用针对特定功能调整的新指令。这种迅速下降的影响,再加上前面提到的CPU单一文化快速增长的重要性,意味着任何新的ISA建立自己的机会之窗很小。即使新的ISA成功了,现代RISC ISA也不是RISC战略所描述的正交ISA,因为晶体管预算的持续增长以及SIMD处理的广泛适用性尤其鼓励采用针对特定功能调整的新指令。

4.简单:关注点分离。复杂:地址空间的分隔。

现代Linux内核(以及大多数其他内核)适合宏内核的较宽松定义,而不适合微内核的狭窄定义。也就是说,凭借其驱动程序体系结构,动态加载的模块和多处理优化,这些功能使内核空间通信越来越类似于微内核的消息传递,与宏内核设计(如Linux设计所体现)相比,它的结构更类似于微内核设计(如Minix所体现)。在讨论时)。像微内核设计一样,Linux内核确实为所有其他OS组件提供了通用的通信,调度,中断处理和内存管理。它的组件确实具有不同的代码和数据结构。动态加载模块时,松散耦合的可移植代码段通过固定接口进行通信,它们不使用微内核的剩余特性:它们不是用户空间进程。最终,摩尔定律确保了由硬件问题(如可移植性(对Tanenbaum的关注)和性能(对Torvalds的关注))引起的问题得以减少,但是软件开发问题变得至关重要。由于设计限制和组件接口复杂性的增加,给OS软件施加了额外的负担,无法弥补地址空间分隔所带来的剩余未实现的优势。法律确保了由硬件问题(例如可移植性(Tanenbaum的问题)和性能(Torvalds的问题)的问题)引起的问题得以减少,但是软件开发问题变得至关重要。由于设计限制和组件接口复杂性的增加,给OS软件施加了额外的负担,无法弥补地址空间分隔所带来的剩余未实现的优势。法律确保了由硬件问题(例如可移植性(Tanenbaum的问题)和性能(Torvalds的问题)的问题)引起的问题得以减少,但是软件开发问题变得至关重要。由于设计限制和组件接口复杂性的增加,给OS软件施加了额外的负担,无法弥补地址空间分隔所带来的剩余未实现的优势。

有趣的是,什么受到了强烈的趋势是虚拟机管理程序,它很像微内核,抽象出硬件的出现。一些人声称管理程序是微内核。但是,虚拟机管理程序体系结构是不同的,因为由微内核承担的职责是由位于顶部的“来宾”内核处理的,虚拟机管理程序之间是多路复用的,虚拟机管理程序抽象不是通用消息传递和内存地址空间,而是主要是实际的硬件仿真。

结论:未来偏向采用最严格语义的人

* ..或“ nitpickers很讨厌预测未来”

实际上,辩论中的很多正确/错误都是语义问题(这是Torvalds争论的一部分,恕我直言Tanenbaum未能完全理解)。很难对未来做出准确的定义,因为争论之外还有很多因素可以发挥作用。较宽松的语义意味着您的预测在飞镖上的目标要比其他人更大,从而给您带来更好的机会。如果您忽略语义,那么Torvalds和Tanenbaum提出的论点在很多事情上都是对的,而在很少的事情上是错的。

tl; dr

大多数ISA不符合RISC的语义定义,但是利用了当时RISC CPU所独有的大多数设计优势;CPU特定的操作系统数量少于Tanenbaum的预期,更不用说Torvalds了;开源确实在通用计算中占据着主导地位,但是该市场的消费者现在主要是那些将计算打包到更固定功能的产品中的人,这些产品无法实现开源软件的很多好处。跨地址空间分离OS功能并没有被证明是有益的,但是跨“虚拟”硬件分离OS功能却是有益的。如果您想证明自己的预测正确无误,请像Torvalds先生那样为自己留出尽可能多的语义操作空间。

PS最终具有讽刺意味的观察是:Linus Torvalds是在用户空间和Linux内核之外保留尽可能多的新功能的最强支持者之一。


42
  • 微内核是未来

他弄错了,似乎一切都在融合使用混合内核。Linux正式仍然是单片的,但是添加诸如FUSE等之类的东西也使其看起来有点混合。

  • x86将消失,RISC架构将主导市场

好的,所以x86并没有消失。但是RISC不会主导市场吗?数十亿使用ARM的智能手机,所有使用RISC处理器的游戏机,大多数网络硬件使用MIPS处理器。

此外,到2000年代初,RISC和CISC融合得如此之多,以至于内部设计没有明显的差异。现代x86处理器基本上是内部具有CISC接口的RISC。

  • (从那时起的5年内)每个人都将运行一个免费的GNU OS

如果用GNU OS来表示GNU Hurd,那确实是一个完全失败的预测。人们大量使用的是Android。Android是Linux,但不是 GNU,因为它不使用GNU libc。相反,它使用Google自己的Bionic。而且标准台式机Linux的市场份额仍低于2%。但是他真的是说消费类电脑吗?在服务器市场上,Linux绝对占主导地位,具体取决于细分市场。


5
“在服务器市场上,Linux绝对占据主导地位,具体取决于细分市场。” 在哪里证明呢?
quant_dev

4
vartec的数字可能被夸大了。我将其留在这里en.wikipedia.org/wiki/OS_market_share#Servers
Federico klez Culloca 2012年

4
@quant_dev:500强,60〜70%的Web服务器,整个谷歌的基础设施,整个FB基础设施,整个亚马逊的基础设施......等等的92%
vartec

1
您可以提供链接来备份您的陈述吗?
quant_dev

13
Top500:i.top500.org/stats,Googlelwn.net/Articles/357658,Amazonnews.cnet.com/2100-1001-275155.html,FB:http://www.infoq.com/presentations/Facebook -Software-Stack
vartec

21
  1. 不确定。

  2. 半对 当今的“ x86”芯片实际上是 RISC,基本上具有“ CISC接口”。x86并没有因此而消亡,因为英特尔拥有足够的市场份额和足够的收入来进行这种过渡,并在其他RISC解决方案从中抢占了很大的市场份额之前就做到了。

  3. 两个主要原因:兼容性和可用性。

    同样,现有系统(Windows和较小的Mac OS)具有非常庞大的安装基础。这意味着很多用户在使用很多程序。免费的GNU操作系统无法复制它。WINE项目已经朝着这个方向做了很多工作,但是它仍然不能替代实际的Windows系统,WINE开发人员甚至都没有声称是这样。人们不希望使用不会运行自己喜欢的程序的操作系统,无论它在理论上多么出色。(并且没有安装的用户群,没有人愿意为该系统开发。这是鸡与蛋的问题。)

    然后,我们开始讨论可用性。我妈妈有Windows系统。她可以出于自己的目的使用它。Windows界面上提供了她使用计算机所需的所有信息,如果我对她说“命令行”一词,她甚至都不知道我在说什么。据我所知,仍然无法在任何免费的GNU OS上做到这一点。实际上,Linux很难使用,以至于即使是社区中的大多数半神都有时会因简单任务而遇到严重麻烦。 而且他们似乎从来没有“搞定”并努力解决问题,这就是为什么他们从未获得市场份额。(任何尝试制作任何大众市场程序的人都应阅读该链接文章!)


16
-1与8年前的博客文章不再相关。
vartec 2012年

16
@Vartec:不再相关了吗?您是否在认真地宣称今天的用户可以选择Linux,并开始执行常见的最终用户任务的全部功能,而不必甚至知道命令行是否存在,就像他们在Windows或OSX上可以使用的方式一样?
梅森惠勒2012年

17
@梅森:你上次见到Ubuntu是什么时候?与OSX相比,在不了解控制台的Ubuntu上执行常见的最终用户任务要容易得多(在OSX上,使隐藏文件可见需要Nerdology的博士学位)。在Ubuntu中,一切正常。在Windows中,您必须安装驱动程序或其他工具。在OSX中,东西根本不起作用。顺便说一句。您的妈妈使用RegEdit :-P
vartec'Mar

8
@MasonWheeler:当然。任何人都可以拿起Ubuntu和与使用没有命令行的东西可言。我的室友-当然不是超级技术素养-从Windows迁移到Ubuntu时没有任何问题。我认识的使用Ubuntu的其他人(经验丰富,但不是专家)也没有任何问题。去年,我的老室友在Mac上遇到的问题要比我现在的室友在Ubuntu上遇到的问题多,在类似的计算机体验水平上。(到目前为止,在Linux上打印甚至比在Mac上打印都容易,在Mac上也是如此!)因此,整个Linux命令行都是一个错误的陈述。
蒂洪·耶维斯

18
@MasonWheeler:您是否认真地宣称今天的用户可以使用Windows并配置网络打印机?
ChristofferHammarström,2012年

14

我认为有两个非常严重的原因,但尚未提及。

第一个是Tanenbaum的盲目假设,即技术优势将导致市场优势。多年来,人们一直在争论微内核(nanokernels,picokernels等)在技术上是否优越,但就目前而言,我们仅假设它们是优越的。我们还有一个问题,即技术优势是否有可能转化为市场优势。我认为事实并非如此。对于大多数人来说,Windows,Mac OS等就足够了。更糟糕的是,将对大多数用户产生重大影响的改进是在用户界面上,而不是内核上。

第二个是彻底(高估)(合理地)成熟市场的变化。当您有新市场时,急于更改事物非常容易。为了在五年内使每个人都得到改变,即使他预测到那样,迁移也必须全速进行。

我还要指出另一种我未曾提及的正确方法。人们已经注意到RISC的普遍性(例如,在手机中)。他们没有提到的是我称之为“微内核2.0”的普遍性。现在,它通常被称为“虚拟机”或“管理程序”。它们实际上确实是许多微内核。

最大的区别在于,Tanenbaum在微内核和用户模式OS仿真方面都进行了专门设计。取而代之的是,我们基本上保持操作系统不变,并定制了微内核以按原样运行它。从技术上来说,这不是很好,但是从市场角度来看,它是非常优越的-无需从上到下使用整个新系统,用户可以继续按原样使用其大部分现有代码,并添加一个很酷的新功能。实际上是一个微内核操作系统的“实用程序”。


8

一个重要的原因是Windows,尤其是Windows 3.1,以及后来的Windows 95和NT 3.51。与旧的基于文本的Unix和DOS系统相反,消费者特别喜欢GUI界面。这意味着更多的普通人会购买家用计算机。同样,互联网在90年代中期的爆炸式增长增加了销售额。

PC的价格在整个90年代也一直下降,直到达到今天的水平。这是由于消费者和企业需求增加带来的规模经济。例如,与我在1992年购买的一台486台式机相比,我目前使用的所有五台计算机的总合成本更低。

现在,以某种方式他可能是正确的,但方向出乎意料。移动设备,智能手机和平板电脑的兴起已部分简化了操作系统,并可能降低x86的知名度。但是,它们远远超出了1992年的预期。


7

最终,所有这些都归结为事实,那就是事情真的不希望改变。

我们没有迁移到结构更好的微内核,因为单片微内核更易于创建,运行更快,并且每个人都知道如何构建它们。另外,由于Linux是作为单片内核开发的并且变得流行,因此没有微内核能够取得足够的成功。(有点像我们都运行Windows的原因,我们运行Windows的原因是每个人都运行Windows)

RISC,其他人指出,x86如今已成为RISC体系结构,其顶部具有CISC包装器,以实现向后兼容。

很多人在服务器上运行免费的GNU OS。网络几乎受其驱动。没有人注意到,因为所有客户端都是Windows。那时,您有一个选择:Linux仍然是非常业余的操作系统;Unix风格,但您买不起。或便宜的Windows。Linux取代Unix花费了很长时间,并且仍然没有足够的引人注目的解决方案在桌面上运行(部分原因是不同的Window系统,二进制图形驱动程序存在意识形态问题,并且缺少稳定的ABI)。但是,在嵌入式和移动等其他非台式机市场上,它的表现相当不错。


6

如果您不认为台式机上有计算机,那一切都是对的。

  1. 没错-微内核从来没有奏效,因为它们不够微。如果您所精简的嵌入式Linux的整体大小小于MACH内核的x86特定位,那么微内核问题是否存在?

  2. RISC主导着市场。每年销售的ARM cpus比X86 cpus多。您与ARM cpu的距离可能永远不会超过6英尺。

  3. 几乎每个人都在运行linux,它们在路由器,电视机顶盒,Tivo和Android手机中-他们只是不知道它们具有操作系统


4
“微内核之所以无法工作,是因为它们不够微”,据我了解,“微”一词不一定指代字节或代码行。这个想法是将功能推入用户空间,从而使内核本身提供的服务最少。例如,具有微内核的系统将具有专用于处理文件系统的用户进程。因此,存在一个大小小于minix的精简版Linux并没有真正的意义。
罗布(Robz)2012年

1
@Robz Size有点相关-微内核的目的是为您提供可移植性,并启用某些边缘情况(例如,在一台计算机上一次运行两个OS环境而不进行虚拟化)。如果微内核大于限制其可部署平台的混合/整体,并且倾向于破坏这样的论点,即如果实际上不小于替代组件,则通过编写一个小的组件更容易实现可移植性。
Marcin

4

1)他在微内核上错了。据我了解,对速度要求的需求胜过微内核(至少在Linux内核中)所提出的关注分离。

2)平板电脑和手机中的主要体系结构是ARM,这是一种RISC指令集。甚至Windows也已移植。

3)每个人都没有运行免费的GNU OS。这主要是由于专利和向后兼容性。那些不需要Windows的人经常选择OSX。


1)速度比以前更重要!我不确定今天有什么大不了的。
gbjbaanb 2012年

取决于您的瓶颈所在。

当您唯一的要求是“比另一个人快”时,随着时间的推移,事情就不会变得简单。在我看来,在短的时间内,HURD可能会取代Linux作为可行的选择,他们浪费了从L4到Mach的端口的时间来破坏它。
Regularfry12年

2

1.微内核失败

出于Linus Torvalds陈述的原因,从表面上看,它在理论上看起来很有吸引力,但是在现代系统(非常复杂的系统)的实现中,复杂度成指数级地难以控制。案例研究是GNU Hurd,这是一个完全无法实现基本功能的全微内核系统。Mac OS X在结构上与Hurd相似,是目前最不稳定和最受限制的OS。

2. CPU架构

对于各种用例,这已经变得多样化。一个CPU体系结构并没有占据主导地位,因为嵌入式,移动,台式机,服务器等用例是不同的,并且需要不同的方法。Tannenbaum没有看到这种多元化。

3. GNU vs世界?

GNU并没有占据主导地位,但是Linux在服务器,嵌入式和移动平台上占据了主导地位。苹果平板电脑和手机运行的iOS只是普通的Unix。对于台式机上的Linux部署,很难获得准确的统计信息,因为没有真正的核心机制(单位销售)可以确定准确的价值。有时,台式机上的大多数Linux部署都记录为Windows部署,因为用户购买了Windows系统,然后用Linux进行了覆盖。但是,如果您对操作系统进行细分,那么根据http://www.w3schools.com/browsers/browsers_os.asp的说明,Linux在台式机上的使用率约为5-6%,这与全球范围内的Windows Vista用户数量相当。

根据我对各种来源的估计,如果算上非西方国家(如中国和印度),Linux可能比Windows XP上的Linux实际数量大约等于Windows XP的用户数(大约25%)。美国或欧盟,但可能不会计入西方统计数据,因为它们只计算针对西方人的英语网站的访问量。

在印度,大多数大学生使用Ubuntu或Fedora,因为这是印度教育系统和著名的IIT的默认操作系统。印度大多数政府机关也使用Linux。在中国,红旗Linux是中国政府和学校系统(艺术与科学院)的官方操作系统,也是中国官方媒体在中国推荐的操作系统,以阻止贫困的年轻中国人使用盗版Windows。如果算上在印度和中国使用Linux的人数,这将震惊大多数西方技术专家,并从根本上改变人们对Linux桌面在其主导地位的非西方国家中真正统治地位的看法。


1
现实情况是,在台式机和服务器的操作系统方面,Windows确实遭到了屠杀。如果您认为只有大约45%的用户使用Windows 7,则意味着每个Windows升级周期对新Windows操作系统的采用减少了10-15%,用户要么继续使用旧版本,要么使用Mac或Linux。对于服务器而言,情况更糟,因为每台Windows服务器升级都会有20-30%的用户立即切换到Linux服务器群集...
AG Restringere 2012年


1

生产变得更便宜,x86接近RISC的价格,以致无法使用它了。还有一个小的供应商锁定。


我认为RISC的驱动力不是曾经的价格,而是RISC架构比x86的设计更好。不幸的是,MIPS和SPARC的扩展规模从未达到很好的水平,DEC在Alpha获得足够的市场份额之前就没钱了。英特尔能够在x86上提高很多性能,因此(对于大多数人)确实没有迫切的理由进行更改。现在,以瓦特/兆赫为单位来衡量性能,x86开始慢慢地变得无关紧要了。
TMN 2012年

是的,我知道,我只是在说为什么RISC在起步时比RISC快得多。当然,这几天变化很大。
卢卡斯·考夫曼

1
  1. 微内核用进程间消息传递代替了方法调用,这为某些假设的好处增加了开发的复杂性。事实证明,即使一切都在一个大流程中进行,您也可以从良好的组件化中获得几乎相同的优势。
  2. 这个问题不再重要。CISC体系结构已不复存在,所有现代处理器在他们心中都是RISC,但这并没有杀死x86指令集。自Pentium-Pro时代(17年前)以来的x86处理器使用操作码转换来使本质上的RISC内核从外部看起来像x86 CPU。
  3. 经典更糟更好。迭代,实用主义,网络和生态系统的影响每次都超过了纯度。

1

微内核是未来的x86将会消失,RISC架构将主导市场(此后5年),每个人都将运行免费的GNU OS

从传统意义上讲,他的预测失败了,这取决于您如何看待和定义未来。

但是时间还没有结束(除了另一个更深入的讨论)

因此,情况仍然可能发生变化:

  1. 微内核或某些变体可能会卷土重来

  2. RISC / ARM可能会占据主导地位->平板电脑/手机

  3. 从现在起10或15年。谁知道,开源正在慢慢改变世界。


1
当然,将来情况可能会发生变化。我的问题是关于现在的世界以及为什么它还没有反映出他的预言。
罗布

这些原因已经被其他人列出,我为您提供了另一种观点,作为任何健康讨论的一部分,至少应考虑所有观点。长寿,我的朋友昌盛。
黑暗之夜

大约3,不同之处在于GNU操作系统不再适用。没有人使用GNU Hurd内核,如果您从Linux或OS X桌面上删除所有GNU用户空间工具,大多数人甚至都不会注意到。如果您查看开源OS的其他成功部署(例如,基于Linux的路由器和Android),它们中的大多数也不依赖于GNU组件。是的,有许多GNU工具非常流行和有用,但是它们远不是人们使用的“操作系统”的一部分。
ehabkost 2012年

0

对于2:CISIC指令集具有一个很大的优势:它更紧凑,就像压缩的机器代码一样。如今,将CISC指令解码为微操作非常便宜,而访问RAM则非常昂贵。因此,CISC的优势在于可以在L1 / L2 / L3缓存中推送更多代码


0

我记得时间-以及之前的时间。Dunno关于微内核,但是

2)RISC的想法有两个方面:软件优化可以在软件中比在硬件中更好地进行,RISC芯片可以经济地比CISC芯片更快地制造。

在短期内,两种想法都被证明是错误的。英特尔可以而且确实做到了以有竞争力的价格,使时钟指令的CISC芯片比竞争对手的RISC芯片更快。与在编译器或在软件运行时管理程序中相比,英特尔可以而且确实使在硬件上进行程序优化的CISC芯片更好,并且可以在此之上添加任何软件优化,就像使用RISC芯片。

3)在我的职业生涯中,计算机科学,编程和操作已被完全重新发明了4次。从主机到PC。从命令行到GUI。从GUI到互联网。从互联网到iPad。革命现在看来很正常,但是我们没有想到这一点。像当时的所有老程序员一样,他正在预言“历史的终结”。

在五年内,很少有人运行GNU OS,因为重新开始了工作。

也许它还在发生。5年前,您曾预言过我们的Windows Server将被* nix服务器取代(正如我所写,SAMBA发布了AD Domain Server,这是拼图中所缺少的部分)。在我工作的地方这不会发生:我们将没有任何本地服务器。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.