记:丹尼斯·里奇(Dennis Ritchie)
文章转载来源:http://www.dotcpp.com/wp/77.html
丹尼斯·里奇被誉为 “ C语言之父 ”,他在生前与贝尔实验室的合作伙伴肯·汤普森 ( Ken Thompson ) 一起利用这种编程语言开发出了 Unix 操作系统。在随后的岁月里,整个科技世界中有太多东西都是在这个操作系统的基础上构建起来的,其中也包括乔布斯生前所建立和管理的苹果 “ 帝国 ” 。
“ 在互联网上,几乎所有东西都会使用 C 语言和 Unix 操作系统。” 派克在接受《连线》杂志采访时说道。“ 浏览器是用 C 语言写成的;Unix 内核是用 C 语言写成的;网络服务器是用 C 语言写成的,否则就是用衍生自C 语言的 Java 或 C++ 语言写成的,要么就是 Python 或 Ruby 语言,而这两种语言都是在 C 语言中执行的。此外,我几乎可以担保,所有运行这些程序的网络硬件也都是用 C 语言写成的。”
“ 现代信息经济在极大程度上是在里奇生前所做工作的基础上建立起来的,对此无论用多么夸张的言辞来形容都不为过。” 派克说道。
他还补充道,就连微软 Windows 操作系统也曾是用 C 语言来编程的;而且,Unix 还为苹果的桌面操作系统Mac OS X 和移动操作系统 iOS 提供了支持。“ 乔布斯可以说是 ‘ 有形之王 ’ ,而里奇则基本上应该算是 ‘ 无形之王 ’。” 麻省理工学院电子工程大学和计算机科学教授、计算机科学及人工智能实验室 ( Computer Science and Artificial Intelligence Laboratory ) 成员马丁·里纳德 ( Martin Rinard ) 说道。
“ 乔布斯的天才之处在于,他能造出这些令人们深深喜爱的产品,这是因为他很有品味,能作出让人们叹服不已的东西。而里奇造出的东西能让那些技术人士用来构建核心的基础设施,这些基础设施在建成以后不一定会让人们再看得到,但却每天都用得到。”
正所谓 “ 吃水不忘挖井人 ” ,在互联网发展的今天,让我们一起来了解这位伟人:
1954年,电气工程师阿利斯泰尔·里奇 ( Alistair E. Ritchie ),决定举家从纽约州的布朗克斯维尔 ( Bronxville ) ,搬到几十公里以外的新泽西。这样可以离他的工作单位 “ 贝尔实验室 ” 更近一些。
13岁的丹尼斯·里奇 ( Dennis Ritchie ) ,就这样随着父亲一起来到新泽西。那时,谁也没有想到,这个文静的少年将在这里待上一辈子,并且创造出改变世界的发明。
中学毕业后,丹尼斯·里奇听从父亲的建议,进入哈佛大学学习应用数学,直到拿到博士学位。他的第一份工作,是为军方研制核武器,这并不符合他的志趣。1967年,通过父亲介绍,26岁的他进入贝尔实验室,从事刚刚兴起的计算机研究。从此,他在新泽西老家一住就是44年,直到去世。
Dennis Ritchie 丹尼斯·里奇
他在贝尔实验室的第一个任务,是参与大项目 Multics ,即开发一个前所未有的、可以多人使用的、同时运行多个程序的操作系统。该项目由贝尔实验室、麻省理工学院和通用电气公司三方联合研制,但是由于设计过于复杂,迟迟拿不出成果,1969 年贝尔实验室宣布退出。
第一个任务这样无果而终,丹尼斯·里奇很不甘,但也无能为力。谁知过完了夏天,比他小两岁的同事肯·汤普森( Ken Thompson ) 找上门,说借鉴 Multics 的设计思路,做了一个个人项目 Unix ,问他有没有兴趣一起参与。丹尼斯·里奇立刻表示同意,于是两人一起投入 Unix 的开发。肯·汤普森的专业是电子工程,丹尼斯·里奇专业是应用数学,正好互补。经过日以继夜的工作,1969年圣诞节前, Unix 已经可以初步运行了。
吸取了 Multics 设计复杂而导致失败的教训,丹尼斯·里奇将 Unix 的设计原则定为 “ 保持简单和直接 ” ( Keep it simple stupid ) ,也就是后来著名的 KISS 原则。为了做到这一点,Unix 由许多小程序组成,每个小程序只能完成一个功能,任何复杂的操作都必须分解成一些基本步骤,由这些小程序逐一完成,再组合起来得到最终结果。
表面上看,这样的设计很低效:为了取得结果,你必须运行一连串小程序,那么为什么不用一个大程序一次运行就得到结果呢?但是事实证明,由于小程序之间可以像积木一样自由组合,所以非常灵活,能够轻易完成大量意想不到的任务。而且,计算机硬件的升级速度非常快,所以性能也不是一个问题。另一方面,开发单一目的的小程序,要比开发大型程序容易得多,所以 Unix 才有可能在短短几个月内问世。
Unix 迅速在程序员中流传,到了80年代,已经成为主流操作系统,演变成整个软件工业的基础,当代最主要的操作系统 — Windows、MacOS 和 Linux —都与 Unix 有关。由此可见,丹尼斯·里奇的 “ 保持简单 ” 原则,对计算机时代的影响有多大。
丹尼斯·里奇对世界的贡献还不止于此。 Unix 最早是用不通用的机器语言编写的,如果换一个型号的计算机,就必须重新编写一遍。为了提高通用性和开发效率,丹尼斯·里奇决定发明一种新的计算机语言 — C语言。
C 语言也贯彻了 “ 保持简单 ” 的原则,语法非常简洁,对使用者的限制很少。丹尼斯·里奇编写的教材《C编程语言》总共只有100多页,薄得难以置信。很多人都被它的简洁性吸引,学习并使用C语言。直到今天,C语言依然是世界上最重要的编程语言之一,“ 保持简单 ” 原则显示了强大的生命力。
发明 Unix 和 C 语言,给丹尼斯·里奇带来巨大的荣誉,他得到了1983年的图灵奖、1990年的汉明奖、1999年的美国国家技术奖章。尽管功成名就,但是就像他的工程设计思想,丹尼斯·里奇在个人生活上也尽量 “ 保持简单 ” 。他依然住在新泽西,低调地生活,不太在媒体上曝光,终身没有结婚。
他也始终没有跳槽,一直在贝尔实验室工作,尽管后者多次分拆,到了最后已经名存实亡。2001年,接手贝尔实验室的朗讯公司,决定关闭大多数实验室,许多研究人员纷纷离开,包括 Unix 发明者之一的肯·汤普森都去了 Google ,但是丹尼斯·里奇哪里也没去,还是留了下来。2006年12月1日,贝尔实验室被整体卖给了法国阿尔卡特公司,第二年他就选择退休了。
退休以后,他过上了隐居生活,外界几乎忘了他的存在。2011年10月12日,共事20年的同事 Rob Pike 从加州到新泽西去拜访他,才发现他已经去世了。由于是独居,无法知道准确的死亡时间。据他的兄弟透露,这几年丹尼斯·里奇的健康状况一直不好,他患有前列腺癌和心脏病。
Rob Pike 在 Google Plus 发了一条简短的消息,“ 据我所知,Unix和C语言发明人丹尼斯·里奇已经去世 ” ,外界才知道这件事。
纪念C语言之父离世6周年。
end
LeanCloud,领先的 BaaS 提供商,为移动开发提供强有力的后端支持。更多内容请关注「LeanCloud通讯」
记:丹尼斯·里奇(Dennis Ritchie)相关推荐
- 缅怀C语言发明人丹尼斯·里奇(Dennis Ritchie )
缅怀C语言发明人丹尼斯·里奇(Dennis Ritchie ) 2011年的10月,对世界的IT业来说,是一个灰色的10月.两位IT巨星离我们而去,一位是大家耳熟能详的苹果公司CEO乔布斯,而另一位则 ...
- 缅怀伟大程序员----丹尼斯·里奇(Dennis Ritchie)
2011年的10月,世界IT业的灰色10月.两位IT巨星离开人间.一位是改变IT应用的苹果公司CEO史蒂夫·乔布斯(Steve Jobs):一位是改变系统和编程语言的丹尼斯·里奇(Dennis Rit ...
- C语言发明人丹尼斯-里奇去世
美国著名计算机专家.C语言发明人之一丹尼斯·里奇 北京时间10月13日上午消息,维基百科资料显示,美国著名计算机专家.C语言发明人之一丹尼斯·里奇(Dennis Ritchie )已于10月9日去世, ...
- 丹尼斯·里奇-c语言之父,Unix之父
丹尼斯·里奇,全名丹尼斯·麦卡利斯泰尔·里奇.C语言之父,UNIX之父.曾担任朗讯科技公司贝尔实验室下属的计算机科学研究中心系统软件研究部的主任一职.1978年与布莱恩·科尔尼干(Brian W. K ...
- 计算机传奇人物之丹尼斯·里奇
尼斯·里奇,C语言之父,UNIX之父.曾担任朗讯科技公司贝尔实验室 下属的计算机科学研究中心系统软件研究部的主任一职.1978年与布莱恩·科尔尼干(Brian W. Kernighan)一起出版了名著 ...
- 保持简单----纪念丹尼斯·里奇(Dennis Ritchie)
丹尼斯·里奇对人类的贡献,被大大低估.此时此刻,全世界几十亿人正在使用的几百亿件电子产品,里面的软件最终都可以追溯到他的智力贡献. ================================== ...
- 反思:乔布斯和丹尼斯·里奇的去世 C语言之父Dennis Ritchie辞世
C语言发明人之一 Dennis Ritchie 北京时间10月13日上午消息,据国外媒体报道,美国著名计算机专家.C语言发明人之一Dennis Ritchie已于10月9日去世,享年70岁. Denn ...
- C语言之父,UNIX之父丹尼斯·里奇去世 享年70岁
[caption id="attachment_84" align="alignleft" width="278" caption=&quo ...
- 丹尼斯·里奇-C语言创始人
丹尼斯·里奇 维基百科,自由的百科全书 跳转到: 导航. 搜索 丹尼斯·里奇 出生 1941年9月9日 Bronxville 逝世 2011年10月12日 (70歲)[1] [2] 美国新泽西州美利 ...
最新文章
- PAT A1017 优先队列
- bgi::detail::path_intersection用法的测试程序
- 【C/C++】实型变量
- 【原创】mysql数据库异常:data truncate for column “*” at row *;data too long *。原因,及解决。...
- 多层陶瓷电容器用处_【科普贴】多层陶瓷电容器的制造工序,你知道吗?
- ajaxSubmit的data属性
- Java开发桌面程序学习(七)——ImageView设置图片以及jar包读取fxml文件
- matlab直方图线性拉伸,直方图均衡化与直方图规定化的MATLAB实现
- JUCE框架教程(8)——DSP Module基础
- 如何关闭eslint相关规则
- matlab 辅助公差设计,尺寸公差辅助标注插件
- 常见的网站功能需求及解决方案
- Swagger官网与官方文档
- python截图工具和模拟鼠标键盘_python PyAutoGUI 模拟鼠标键盘操作和截屏功能
- h5课件制作_PPT轻松转化H5,让“课件”动起来!
- 211大学中哪几所计算机专业好,北京哪些211大学计算机专业比较好考研
- rs232读取智能电表_智能电表防窃电原理 偷电为什么会被发现
- 工资软件测试白盒测试报告,软件测试白盒测试实验报告
- 基于内容的菜谱推荐系统
- 爬取百度贴吧帖子页内容