Unix之父Dennis Ritchie访谈:卓越的Unix操作系统

作者: Denterp 2011-05-31 08:55:04
  来源:陈秋歌
  近日,“日本奖”基金会在美国举行了2011年度“日本奖”的颁奖仪式。Unix之父Dennis Ritchie荣获“信息与通讯奖“。IEEE Spectrum资深新闻编辑Samuel K. Moore为此专访了Dennis Ritchie,下面是对本次采访内容的编译。
  “日本奖”基金会于今年1月宣布了2011年度“日本奖”获奖名单,来自美国贝尔实验室的退休研究员Dennis Ritchie和美国Google公司的高级工程师Ken L. Thompson因为在Unix操作系统开发中所作出的贡献,而荣获“信息与通讯奖(information and communications prize)”;来自日本大阪大学的Tadamitsu Kishimoto和Toshio Hirano则因为发现白细胞介素6(interleukin-6)而获得“生物科学与医药科学奖(bioscience and medical science prize)”。
  该颁奖仪式往年通常在日本举行,但由于今年日本发生地震和海啸,3月17日,该基金会宣布该颁奖仪式改在美国举行。5月19日,该颁奖仪式在位于新泽西州Murray Hil区的贝尔实验室总部举行。Ritchie和Thompson曾在这个实验室工作并开发了Unix操作系统,现在该实验室是法国通信公司Alcatel-Lucent的一部分。Thompson现任谷歌高级工程师,Ritchie仍在贝尔实验室工作,是“退休研究员中的显要成员”。除了开发了Unix,Ritchie还发明了C编程语言。
  IEEE Spectrum资深新闻编辑Samuel K. Moore参加了本次颁奖仪式,并专访了Ritchie。
  IEEE Spectrum:你同时发明了Unix和C,你更喜欢哪一个呢?
  Dennis Ritchie:很显然,C语言带来了丰厚的利润,由我和pian Kernighan合著的《The C Programming Language》一书仍在出版和销售。Unix正在不断壮大,同时C语言至今仍在使用。从某种意义上,C语言更率属于我的个人发明,它由Ken发明的B语言发展而来,但却经历了很大的进化。虽然我曾和很多人谈过此语言,但C语言所有的变化都归根于我。但对于Unix的进化,很多人都做出了贡献。
  IEEE Spectrum:用你的话来说,“C语言很神奇但仍存在缺陷,是一种极其成功的语言”,将来是否会再对它进行改进呢?
  Dennis Ritchie:有许多小的方面----我甚至不想考虑再使用list。其中有一些被限定在标准化的过程中。比如在内部类型系统工作的方式中有很多内部连贯性,这并不总是容易实现的。例如:空结束数组----字符串数组;字符串数组是以null作为终止符的字符数组。使用者曾抱怨在很多情况下它很容易出错,相比而言,字符串在声明时先说明字符数目,再声明所含的字符。实际上,一个字符串数组仅是一个数组,并没有存放字符数目的位置,这是此语言基本的运作方式,即便在很多方面它很容易出错。
  IEEE Spectrum:Unix不仅延续了下来,还占领了计算机世界。对于Unix的现代化身Linux,你如何看待?
  Dennis Ritchie:我认为它很成功。我不再评论它细微的变化。虽然它并没有通过相同的方法获得批准,也没有遵循相同的标准,但我认为从本质来说,Linux是Unix新的实现形式。所以从这个意见上说,它做得很好,并将做得更好,为此我很高兴。
  IEEE Spectrum:在你的网站上,你写了一个大致的备忘录(从1976年开始):“建议一个Unix轻便实验。”。它代表了把Unix当作一个更普遍的计算机平台的新思考方式,或许甚至考虑把它当作操作系统,对你来说,它的意义很重要吧?
  Dennis Ritchie:当时我们正在移值Unix,我不得不很艰辛地寻找其他任何系统在移值中的参考资料。我发现了一些,但他们却没起到任何作用。所以我和Steve Johnson在实现Unix的轻便性上做出了特殊的贡献。Ken对内核做了大量的修改,从而使实现轻便性成为可能,但他当时正打算离开,去澳大利亚公休,所以实际的轻便性实现工作都是我和Steve做的。
  IEEE Spectrum:Unix的最初目的是想作为一个手机系统交换机的平台,是吗?
  Dennis Ritchie:Ken最初的想法是计划写一个操作系统。他开始后,我也很早便加入了。除了做了一些新的、很酷的东西后,真正引导我们的是我们的“自私”----去开发一些可以使我们的生活变得更便宜的工具:“我喜欢用相应工具去做相应的事。对于一件很困难的事,我常思考我可以开发什么样的工具,让它实现起来更简单呢?”
  IEEE Spectrum:后来你都开发了哪些诸如此类的工具呢?
  Dennis Ritchie:有很多。比如Brian Kernighan开发的一种小语言。我们都喜欢排版和文档----这是一种突发奇想,你可以写一种语言去描述图片、线条,然后用它来绘制图表及有机分子图。Unix使它实现起来很简单。
  IEEE Spectrum:请分享一些Unix在实际中使用的例子。
  Dennis Ritchie:Kindle基于Linux,是件很酷的事。智能手机等相似的事物,他们都相当神奇。

相关资讯