本页使用了标题或全文手工转换

塔能鮑姆-托瓦茲辯論

维基百科,自由的百科全书
跳转至: 导航搜索

塔能鮑姆-托瓦兹辯論英语Tanenbaum–Torvalds debate),由Minix創作者安德鲁·斯图尔特·塔能鲍姆Linux核心的作者林纳斯·托瓦兹之間進行的網路論戰,討論的主題在於作業系統架構的選擇。1992年在Usenet討論群組comp.os.minix,[1]上發起。塔能鲍姆认为,以微内核架構設計的作業系統,在理論上,比宏内核架構更加优越,Linux採用的宏內核架構是過時的。但是林纳斯·托瓦兹以開發實務上的觀點展開反擊,並比較Minix與Linux的效能差異。稍後一些著名的駭客也加入討論,如彼得·麥唐納大衛·米勒曹子德。這場辯論影響了Linux核心的設計走向。这场辩论有时也被视为一场口水战。

辯論過程[编辑]

宏内核的内核空间完全运行在核心态
安德鲁·斯图尔特·塔能鲍姆博士(在comp.os.minix上叫 'ast' )
林纳斯·托瓦兹

虽然初步的辩论显得相对温和,当事人双方仅仅平淡了讨论了有关内核设计的话题。但随着每一轮的发帖,辩论开始逐步变得详细和复杂,甚至跨足于内核设计之外的其它领域,如"哪种微处理器架构将在未来战胜其它架构",但其中也包括了一些人身攻擊、意氣之爭的言詞辯論。除了塔能鲍姆和托瓦兹,Linux開發社群中一些著名駭客也加入辯論,包括彼得·麥唐納,早期的 Linux 内核开发者和第一个发行版 Softlanding Linux System 的创建者;大衛·米勒,Linux 内核的核心开发者之一;和曹子德,北美洲第一个 Linux 内核开发者。

“Linux 是过时的”[编辑]

第一条有关这场辩论的记录,在1992年1月29日,塔能鲍姆在 comp.os.minux 上发表了他的批评。在题为《Linux 是过时的》(Linux is obsolete)的帖子中,塔能鲍姆指出宏内核在整体设计上是有害的。虽然他最初并没有加入高深的技术细节,来解释他认为微内核更好的原因,但他也表明,这关乎可移植性Linux內核Intel 80386架構的耦合度太高,但處理器架構的進化很快。不應該在某個特定架構上開發作業系統,所有的作業系統都應該具備可以被移植到其他處理器平台的能力。他提到,在1991年仍然以宏內核來設計作業系統,是“回到1970年代的巨大退步“(a giant step back into the 1970s),現代的作業系統,應該像GNU Hurd一樣採用微核心架構。

托瓦兹在一天之後反擊,他首先攻擊Minix在設計上有缺陷(缺少多執行緒是一個主要例子)。托瓦兹說,他用自己私人的時間來開發,完全沒有獲利,免費將程式碼貢獻出去(當時塔能鲍姆的Minix原始碼,仍然要購買才能取得),因此,對於Minix設計不良,塔能鲍姆不能用「這只是興趣」來為來辯護。托瓦兹說,從哲學及美學的觀點出發,微核心的確是一個比較好的架構,但是採用微核心架構的GNU Hurd根本沒有如期被成功開發出來,所以他才要開發Linux。托瓦兹強調,作業系統核心主要的功能都倚靠硬體特性,所以內核本身不需要過度具備可移植性,讓高階的軟體应用程序接口具備可移植性才是更重要的。Linux內核採用集成式核心架構,是因為它能夠簡化核心設計,這是一個權衡下的結果(An acceptable trade-off)。以Linux來跟Minix比較,移植程式到Linux上是更容易的。托瓦茲進一步說,可移植性是那些寫不出新程式的人才需要的(Portability is for people who cannot write new programs)。Linux一開始針對Intel 80386架構來開發,一部份的理由是為了托瓦兹自己買的電腦就是80386,這正好可以讓他對80386架構了解更多。Linux一開始就是準備自己使用的,如果想要移植到別的平台,程式碼都是開放的,想要的人可以自己做。

辯論結束[编辑]

托瓦兹在稍後放低姿態,希望能夠停止這場口水戰。他在論壇上承認他對於塔能鮑姆一開始文章中的內容反應過度,而且已經向塔能鮑姆教授寄出私人電子郵件以表示歉意。雖然他仍繼續回應了幾篇文章,但都是針對技術方面的討論。

在這場辯論結束之後,塔能鲍姆和托瓦兹皆表示他們之間沒有因此而產生個人恩怨,塔能鲍姆表示,不應該因為他們兩個人之間對於技術觀點不同,就認為他們兩人之間存在惡意對抗的情緒。

後續發展[编辑]

再次論戰[编辑]

这个话题在 2006 年塔能鲍姆在 《Computer》杂志发表题为《我们能让操作系统可靠和安全吗?》的文章后被再次提起。尽管塔能鲍姆本人提到,他并不是想借这篇文章重启内核设计的论战,但是这篇文章本身和 Slashdot 技术网站上附加的 1992 年论战的归档共同使战火重燃。

托瓦兹通过一个在线论坛反驳了塔能鲍姆的论点,几个技术新闻网站随即开始对其进行报道。这使 Jonathan Shapiro 回应称,大多数经过实际检验的安全可靠的计算机系统,都使用更近似于微内核的模式设计。

外部連結[编辑]

註釋[编辑]

  1. ^ A. S. Tanenbaum (January 29, 1992). "LINUX is obsolete". comp.os.minix. (Web link). .於2006-11-27查閱。