Dennis Ritchie(纪念)

Ritchie简介: 

        丹尼斯·麦卡利斯泰尔·里奇Dennis MacAlistair Ritchie,1941年9月9日-2011年10月12日),出生于美国纽约。著名的美国计算机科学家,对C语言和其他编程语言、Multics和Unix等操作系统的发展做出了巨大贡献。

        里奇在哈佛大学学习物理学和应用数学毕业,1967年他进入贝尔实验室,他曾是朗讯技术公司系统软件研究部门的领导人(2007年退休)。1983年他与肯·汤普逊一起获得了图灵奖。理由是他们“研究发展了通用的操作系统理论,尤其是实现了UNIX操作系统”。1999年两人为发展C语言和Unix操作系统一起获得了美国国家技术奖章。 

      丹尼斯·里奇与肯·汤普逊两人发展了C语言,同时发展了Unix操作系统,在电脑工业史上占有重要的席位。至今为止C语言在开发软件和操作系统时依然是一个非常常用的电脑语言,它对许多现代的编程语言如C++、C#、Objective-C、Java和JavaScript拥有极大的影响。在操作系统方面Unix也具有极大的影响:今天市场上有许多不同的Unix方言如AIX、Solaris、Mac OS X和BSD等,以及与Unix非常相似的系统如Minix和非常普及的Linux操作系统。甚至其Microsoft Windows操作系统与Unix相竞争的微软为他们的用户和开发者提供了与Unix相容的工具和C语言编译器。

Ritchie专访:

IEEE Spectrum:你同时发明了Unix和C,你更喜欢哪一个呢?

Dennis Ritchie:很显然,C语言带来了丰厚的利润,由我和Brian Kernighan合著的《The C Programming Language》一书仍在出版和销售。Unix正在不断壮大,同时C语言至今仍在使用。从某种意义上,C语言更多出自我手,它由Ken发明的B语言发展而来,但却经历了很大的进化。虽然我曾和很多人谈过此语言,但C语言所有的变化都归根于我。但对于Unix的进化,很多人都做出了贡献。

IEEE Spectrum:用你的话来说,“C语言既古怪又有缺陷,却取得了巨大成功”,如果你有机会重新设计的话,它将会有什么不同?

Dennis Ritchie:需要改很多小地方,但我不想逐一列出了。其中一些在标准化过程中已经改正。但是原设计中也有很多内在的一致性(注:指不太好改),比如,内部类型系统的运作方式。并不总是那么易用。例如,Null结尾数组也就是字符串,是一个以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:到1970年代后期,AT&T已经拥有使互联网诞生的一切要素。Unix及其所有工具和服务,比如电子邮件,都已经有了,运行CP/M的个人电脑也比较常见。AT&T还有ISDN技术——我们本来可以跳过调制解调器/窄带网络时代的,应该在1985年而不是1985年就出现万维网(Web)了。你是否觉得错失了一个大机遇?贝尔实验室当时有人预见到世界的这一图景吗?

Dennis Ritchie: AT&T的思维定势基本上是以连接为中心的。长时间连接,就像电话那样。分组交换对他们没意义。AT&T在早期互联网时代有太多机会被视而不见了。

IEEE Spectrum:Unix的最初目的是想作为一个电话交换机的平台,是吗?

Dennis Ritchie:Ken最初的想法是计划写一个操作系统。他开始后,我也很早便加入了。除了做了一些新的、很酷的东西后,真正引导我们的是我们的“自私”——去开发一些可以使我们的生活变得更轻松的工具:“我喜欢用相应工具去做相应的事。对于一件很困难的事,我常思考我可以开发什么样的工具,让它实现起来更简单呢?”

IEEE Spectrum:后来你都开发了哪些诸如此类的工具呢?

Dennis Ritchie:有很多。比如Brian Kernighan开发的一种小语言。我们都喜欢排版和文档——这是一种突发奇想,你可以写一种语言去描述图片、线条,然后用它来绘制图表及有机分子图。Unix使这一切都很简单。

IEEE Spectrum:Unix实际应用里你最喜欢哪个?

Dennis Ritchie:Kindle基于Linux,真酷啊。智能手机之类的也是。真让人惊喜。

 

Ritchie教会我们:

首先:要对你所做的事有兴趣。他们的初衷并非为了挣钱,事实上刚开始是为了省钱,或者将他们的游戏装到一个更省钱的机子里边。

第二:跳出舒适区工作非常有必要。Dennis Ritchie是一个物理学家和数学家,但是,他却成了最具传奇的程序员。很显然,他的专业背景为他研发出C语言或者UNIX起了很大帮助,正如Dennis Ritchie所言:Dennis Ritchie不惧工作在一个陌生的领域里,如果丹尼斯花了数十年的时间在晦涩的数学上,或许UNIX就会胎死腹中。

第三:要有创新思维。Dennis Ritchie在贝尔实验室是幸运的,那里资金充足,不缺员工,他才有条件与他得朋友按照自己的时间安排来研发他们想要的东西。

最后:要懂得分享。现在许多企业都喜欢保密,将自己的核心技术藏匿起来,但这在我看来都是不成功的,他们的思想与态度都是不利于公司发展的。

可以说现今世界上最重要的软件是UNIX,之所以重要,是因为它是开放的,任何人都可用。很多人可能会说开放就等于无利可图,在我看来这样的人最悲观最愚蠢。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值