前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >26岁创造UNIX的编程大佬,退休后却成为一名飞行员

26岁创造UNIX的编程大佬,退休后却成为一名飞行员

作者头像
IT大咖说
发布2020-03-12 18:28:16
1.1K0
发布2020-03-12 18:28:16
举报
文章被收录于专栏:IT大咖说IT大咖说IT大咖说

UNIX 之父、图灵奖得主、C 语言的前身 B 语言的开发者、操作系统 Plan 9 的主要作者、Belle(一个国际象棋程序)作者之一,这些成就都出自一人之手,编程史上从来不缺大人物,但是肯·汤普逊(一般称之为 Ken Thompson,肯·汤普森)绝对是一个传奇。

肯·汤普森,图源:维基百科

在《编程人生》一书的访谈中,肯·汤普森曾回忆:“小学时受到的教育很烂,但唯独一堂课讲了二进制,从此我便被迷住,因为从小就喜欢逻辑,因此做了很多二进制的运算,甚至还借助一台十进制计算器扩展到各种进制。”

汤普森 1943 年出生在美国新奥尔良。1960 年,就读于加州大学伯克利分校主修电气工程,并取得电子工程硕士学位。当时,他的论文导师是埃尔温·伯利坎普,同样也是一位传奇人物。

埃尔温·伯利坎普的博士导师是香农、Gallager 等大师,他发明了 Berlekamp 、Welch-Berlekamp 和 Berlekamp-Massey 等著名算法,还花了不少时间研究围棋等博弈游戏,他是组合博弈论的创始人之一。

埃尔温·伯利坎普,图源:维基百科

1966 年,毕业后的汤普森被贝尔实验室聘用。他跟丹尼斯·里奇(C语言创始人)在 Multics 操作系统上工作。那时候,计算机还处在批处理的阶段,技术不够发达,程序员的工作效率不高,他们只能在既慢又笨重的大型机器上工作。为了解决一系列问题,Multics 操作系统应运而生,它是由美国高级研究计划局资助、由麻省理工学院、贝尔实验室和通用电气公司的研究人员共同开发的分时操作系统。

可是好景不长,因为开发周期过长、成本过高,1969 年贝尔实验室决定撤出这个项目。令汤普森最不开心的是他曾为 Multics 写过一个游戏《太空旅行》,这下也玩不了了。

为了继续玩游戏,汤普森找到了一台旧的 PDP-7 计算机,他重新编写了这个游戏,还花了一个月的时间开发了全新的操作系统 UNiplexed Information and Computing System(UNICS),后来改称为 UNIX。

UNIX 首次运行在 DEC PDP-7 上,图源:维基百科

在 UNIX 的开发过程中,汤普森决定 UNIX 需要一种系统编程语言。于是他开发了 B 语言,也就是 C 语言的前身。B 语言在进行系统编程时不够强大,所以 1973 年丹尼斯·里奇用 C 语言重写了 UNIX,安装在 PDP-11 计算机上。随着后来 UNIX 的广泛使用,C 语言也成为了当时最受欢迎的编程语言延续至今。

坐着的肯·汤普森与丹尼斯·里奇一起在 PDP-11 旁工作,图源:维基百科

1980 年,汤普森与贝尔实验室的另一位工程师约瑟夫·康登开发了一款硬件辅助程序 Belle,一个会下国际象棋的计算机。同年,汤普森当选为美国国家科学院和美国国家工程院院士。

1990年代带有液晶显示屏的压感国际象棋计算机,图源:维基百科

1983 年,汤普森被贝尔实验室任命为研究员。他还协助丹尼斯·里奇在贝尔实验室创建了 Plan 9 和 Inferno 操作系统。这一年,美国计算机协会将图灵奖授予肯·汤普森和丹尼斯·里奇。

肯·汤普森与丹尼斯·里奇(右),图源:维基百科

2000 年底,汤普森从贝尔实验室退休了,他成为了一名飞行员。在编程的世界里遨游半生,也想去真正的天空看看了。

如果你以为他的传奇生涯就这么结束了,那就太天真了。

2006 年,他又加入了 Google 公司,参与设计 Go 语言。当提到他与其他 Go 语言的原始作者时,他说:“当我们三个人(Thompson,Rob Pike 和 Robert Griesemer )准备开始开发 Go 的时候,纯粹是为了研究。我们一起讨厌 C ++。(笑声)回到 Go,我们开始的想法是,对于语言的每个功能都要碰头交流,因此不管什么原因,我们都不会在语言中添加多余的垃圾。”

罗伯特·格瑞史莫,罗勃·派克和肯·汤普森,图源:Google

他认为优秀开发人员的标志是热情,虽然他是编程狂魔,但是他却不建议自己的儿子去读计算机,理由竟然是计算机发展太慢了。大佬果然是大佬。现在已经 77 岁的汤普森依然在编程路上不断探索,我们又怎么能停下脚步呢

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-03-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 IT大咖说 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档