我对C语言之父的一次邮件采访

发表于:2015-12-18 10:18

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:黄小非    来源:51Testing软件测试网采编

  2003 年我在运营了一个 Unix 的网站。某天我突发奇想:干嘛不采访一下 Dennis Ritchie 呢?于是我就发了封邮件给 dmr@plan9.bell-labs.com,结果居然很快就收到了他的回复:“直接发问题过来吧,看看会怎么样”。于是我就按他说的做了,他果然很随和地回答了我问的各种问题。现在回想起来,我当时真的应该问些更有意义的问题才对。不过也不能苛求什么,因为当时我才17岁而已。总之,我认为这段经历是值得我去深挖的。
  丹尼斯·里奇(站立者)与肯·汤姆森 于1972年于一台PDP-12前合影 (照片来源:贝尔实验室提供)
  您第一次接触电脑是什么时候?
  应该是我在大学念本科的某个时段(大约是在1960年左右),我当时参加了一些非正式课程的讲座,就是关于计算机的,我发现自己被计算机迷住了。于是我就申请了时长为一学期的计算机导论必修课程。这个课程的第一部分是讲模拟电路计算机的,接下来就是对纸带打卡设备的介绍,接下来才接触到真正的数字计算机——也就是我们在上面准备做编程的Univac I机型。我当时是物理系的本科生,不过我发现我同时对计算理论和计算应用都很感兴趣。所以,在硕士阶段我的研究基本都是关于理论(递归函数的结构)的,但我也开始在计算实践方面投入精力。我还在我当年参加的那门计算机导论课程当了三年的助教,不过后来这门课程采用的机器已经换到IBM 7094上了。
  您认为自己在计算领域的最高成就是什么呢?
  如果只能说一件事情的话,那就是让Unix具有可移植性,这基本上是来自于我的主意。当时C语言已经在多种不同的机型和操作系统上得以实现,Unix也已经部署到了PDP-11机型上,但是要让Unix整个系统具有移植性,还是个新概念。
  那您目前有什么成果吗?最近在忙什么项目呢?
  最近我自己没有什么值得称道项目——我正在把我的兴趣重心移到历史上!过去几年,我扮演更多的是管理者的角色。我有所接触的项目,就是来自于开发小组的Plan 9系统和Inferno,但是我必须要说明,这不是我主导开发的项目,而是我的同事们在主导开发。我更多的时候只是负责发工资,还有给应聘者做做报告。
  您现在花在编程上的时间有多少呢?
  很少了。我现在主要是修修补补,调一调HTML,写写脚本什么的
  您能描述一下在贝尔实验室的工作是怎样的么?你们平时都用什么软件呢?
  我一般来得比较晚,除非早上有会议。不过我每天要花大量时间处理电子邮件,和同事进行沟通。我现在的工作环境(在我的个人电脑上)是Windows NT,但是我是用Windows系统作为一个图形终端,去连接Plan 9服务器,这就和你通过X Window客户端连接服务器是一个道理。我可以在家通过Modem进行远程连接(今年夏天升级到了ISDN),在办公室的话我就用局域网了。所有的文字编辑,软件开发相关工作,邮件收发都是通过这种连接方式到Plan 9上进行的。如果要编辑Excel,Word,或者上网看网页,我则会切回Windows NT进行。
  您对 C 语言的未来有什么预测吗?
  C语言在和C++的比较中渐渐显出劣势,当然也许和Java的比较,或者和其他高级别的脚本语言的比较也是如此。但是C语言在基础系统开发领域仍然是非常强劲的。
  您对微内核和大型系统两者的看法是什么?
  其实从用户的角度来讲,你是感觉不到这两者有什么太大区别的。“微”内核在现如今也可能会很庞大,“大型”系统搭载了很多可装卸的驱动程序,这也利用了“微内核”的优点。
  您同意 Rob Pike 关于系统研究的(无)相关性的说法吗?
  当然同意,尽管Rob把这个话题弄得很容易引起争端。现在的情况和我们开始研发Unix的时候相比,确实是如此。现如今的软件生态系统已经非常拥挤了,新思想很难产生,也很难传播。
  您对Linux和BSD这些Unix衍生系统的开发有什么看法?您认为这些系统是不是最终会取代Unix系统的地位?
  (这些系统)已经成为了现象级的事物,我认为他们很好,不过这些系统长期以来一直受到了所有权的困扰,并且现在还在受到这种困扰。Sun,SGI,IBM,Digital都有(或者曾经有)同一种系统的各自版本——重复地实现Linux和BSD。这些版本的所有权各自动机不同,当然,每个版本都有各自的吸引力。这就是品牌差异,也是这些系统在移植性方面存在困难的原因。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号