肯·汤普逊

✍ dations ◷ 2025-04-04 07:48:22 #1943年出生,在世人物,图灵奖获得者,美国国家科学院院士,美国计算机科学家,美国程序员,Unix人物,贝尔实验室科学家,编程语言设计者,Google雇员,美国

IEEE皮奥尔奖(英语:IEEE Emanuel R. Piore Award)(1982)
图灵奖(1983)
IEEE理察·卫斯里·汉明奖章(1990)
计算机先驱奖(英语:Computer Pioneer Award)(1994)
计算机历史博物馆研究员奖(1997)
美国国家技术奖章(英语:National Medal of Technology)(1998)
金井务奖(英语:Tsutomu Kanai Award)(Tsutomu Kanai Award)(1999)

肯尼斯·蓝·汤普逊(英语:Kenneth Lane Thompson,1943年2月4日-)小名肯·汤普逊(英语:Ken Thompson),美国计算机科学学者和工程师。黑客文化圈子通常称他为“ken”。在贝尔实验室工作期间,汤普逊设计和实现了Unix操作系统。他创造了B语言——C语言的前身,而且他是Plan 9操作系统的创造者和开发者之一。2006年,汤普逊进入Google公司工作,与他人共同设计了Go语言。他与丹尼斯·里奇同为1983年图灵奖得主。

此外,肯·汤普逊还参与过正则表达式和UTF-8编码的设计,改进了文本编辑器QED(英语:QED (text editor)),创造了ed编辑器。他曾制造过专门用于下国际象棋的电脑“Belle(英语:Belle (chess machine))”,并创建了残局数据库(英语:Endgame tablebase)。

肯·汤普逊在美国的新奥尔良出生。有人曾问他如何学会了编程,他表示自己只是因为对逻辑着迷。

1960年,他就读加州大学柏克莱分校,主修电气工程,1966年获取了电子工程硕士学位。他的导师是美国数学家、计算机科学家埃尔温·伯利坎普。1966年,肯·汤普逊加入贝尔实验室。他参与了贝尔实验室与麻省理工学院以及通用电气公司联合开发的Multics系统项目。在开发Multics系统期间,汤普逊创造了Bon编程语言。与此同时,他又编写了一个名为“Space Travel”的游戏。后来贝尔实验室撤出了Multics计划。为了能够继续玩游戏,汤普逊只好找到一台老式PDP-7机器,重写了他的“Space Travel”游戏。

在把游戏移植好之后,汤普逊又着手把自己的工具扩充成完备的操作系统。他和丹尼斯·里奇带领一些贝尔实验室的成员在PDP-7上面进行开发工作,实现了文件系统、进程、设备文件、命令行解释器和一些小的工具程序等。1970年,在布莱恩·柯林汉的建议下,这个系统命名为“Unix”,与“Multics”名字相对应。在完成Unix系统开发的基本工作之后,汤普逊觉得Unix系统需要一个系统级的编程语言,于是创造了B语言。后来里奇在B语言的基础上创造了C语言。

在60年代,肯·汤普逊还参与了正则表达式的设计,开发了QED(英语:QED (text editor))的兼容分时系统版本,并在其中引入正则表达式支持。QED和后来由汤普逊编写的ed编辑器对正则表达式的流行做出了重要贡献。之后正则表达式普遍用于Unix的文本处理程序中。现在,几乎所有使用正则表达式的程序都用到了某种来自汤普逊的记号的变体。汤普逊还发明了Thompson构造法,该算法能够将正则表达式转化为非确定有限状态自动机以提高匹配效率。

进入70年代,肯·汤普逊和丹尼斯·里奇继续合作开发Unix操作系统。他们二人在Research Unix的开发方面非常有影响力,以至于道格拉斯·麦克罗伊后来写道,“你可以安心地在几乎所有的贡献后面都加上丹尼斯·里奇和肯·汤普逊的名字。”汤普逊在2011年的一次采访中说,Unix的第一个版本是他写的,之后里奇开始提倡这款系统,并且帮助进行开发:

Unix系统的开发也帮助了C语言的发展。肯·汤普逊后来补充道,C语言“随着Unix系统的一次重写而发展,就这样,它成为了系统程序设计的完美选择。”

在1975年,肯·汤普逊从贝尔实验室休假,并回到了他的母校加州大学伯克利分校。在那里,他帮助在PDP-11/70上面安装了Version 6 Unix系统。后来加州大学伯克利分校维护了自己的Unix版本,即伯克利软件套件(BSD)。

肯·汤普逊和贝尔实验室的约瑟夫·康登(英语:Joseph Henry Condon)共同制作了下棋机器Belle(英语:Belle),汤普逊负责软件部分。汤普逊还编写了生成国际象棋残局走法的程序,即残局数据库(英语:Endgame tablebase)。对于所有只剩4到6步的残局,只要程序从数据库中找到了棋谱那么就可以给出“完美”解法。后来他在国际象棋专家约翰·罗伊克罗夫特(英语:John Roycroft)的帮助下发布了程序生成结果。

80年代之后,汤普逊和里奇继续修补Research Unix,在第8到第10版中采用了BSD的代码。在80年代中期,贝尔实验室开始计划用一套新的操作系统来取代Unix,即贝尔实验室九号项目。这个系统是一个利用Unix原理的新系统,计划将更广泛地用于所有主要设备中。汤普逊为计划的设计和实施发挥了重要作用。来自Research Unix的较新版本的一些程序,例如mk和rc(英语:rc)也加入到Plan 9系统中。

汤普逊试验了早期版本的C++语言,但是后来拒绝使用C++,因为在不同版本之间经常发生不兼容的情况。汤普逊在2009年的一次采访中表达了对C++的负面评价,并说“C++做很多事情都是只达到一半的程度,而且它就是一个由各种互相冲突的想法组成的垃圾堆。”

1992年,汤普逊和罗勃·派克设计并实现了UTF-8编码方案,并将其用于Plan 9系统中。现在,UTF-8编码已经成为互联网的主要字符编码,在所有网页中,使用UTF-8编码的网页占了一半以上。1996年,肯·汤普逊继续和丹尼斯·里奇合作,开始从事Inferno操作系统的开发。

2000年下半年,汤普逊离开贝尔实验室,进入美国的Entrisphere公司工作。2006年辞职并加入Google公司。之后他与罗勃·派克和罗伯特·格瑞史莫(Robert Griesemer)二人共同设计了Go语言。在讲述自己的开发过程时,他说他们三人都是从零开始的。出于对C++的厌恶,三个人共同讨论了语言的每一项特性,所以Go语言最终没有任何“无用的垃圾”。

在2009年的一次采访中,汤普逊表示自己正在使用基于Linux的操作系统。

1980年,汤普逊当选美国国家工程院院士,因为“设计了Unix操作系统,它的效率、广度、力量和风格指导了一代在小型计算机进行开发的人。”

1983年,因“发展了通用操作系统的理论,特别是实现了Unix操作系统”,汤普逊和里奇共同获得了图灵奖。他的演讲以《Reflections on Trusting Trust》(反思对信任的信任)为题。文中提到的向编译器植入的后门后来被人们称为“Thompson hack”,对计算机安全领域产生了重要影响。因为在Unix系统和C语言方面做出的贡献,他们二人在1990年共同获得了IEEE汉明奖(英语:IEEE Richard W. Hamming Medal),在1997年获得了计算机历史博物馆研究员奖,又在1999年4月27日获得了由美国总统比尔·克林顿颁发的美国国家技术与创新奖章(英语:National Medal of Technology and Innovation)。

1999年,电气电子工程师学会向汤普逊颁发了第一个金井务奖(英语:Tsutomu Kanai Award)。2011年,汤普逊和里奇二人又共同获得了日本国际奖。

相关

  • 听觉听觉指声源的振动所引起的声波,通过外耳和中耳组成的传音系统传递到内耳,经内耳的环能作用将声波的机械能转变为听觉神经上的神经冲动,后者传送到大脑皮层听觉中枢而产生的主观
  • 彼得·谢弗彼得·谢弗爵士(Sir Peter Levin Shaffer,1926年5月15日-2016年6月6日),二战后当代英国著名的剧作家。先后在书店、出版社工作,担任过文学评论和音乐评论。其主要作品有《上帝的宠
  • 韦斯特综合症韦斯特症候群或韦氏症候群(West syndrome)是发生于婴幼儿身上罕见的癫痫失调症状。此症状依其发现者英国医师威廉·詹姆士·韦斯特William James West(1793-1848)来命名。韦斯特
  • 等焓等焓过程(英语:isenthalpic process)是一种热力学过程,过程中的焓H(或是比焓h)不变,真实气体的节流过程就是等焓过程的一个例子。等焓过程中,过程前的焓等于过程后的焓,焓的变化量为0
  • 阴蒂头阴蒂头为阴蒂中一可见的尖端部分,但往往被阴蒂包皮部分或完全盖住。阴蒂头和阴蒂系带相连,后者以及阴蒂包皮都和小阴唇相连。阴蒂头和阴蒂内部的阴蒂海绵体相连。阴蒂头的形状
  • CBrsub4/sub四溴化碳是溴取代甲烷上所有氢的产物,化学式为CBr4。四溴化碳有两种晶型,在46.9°C以下的晶型II(或β)和在46.9°C之上的I(或α)。单晶有C2/c空间群,晶胞参数为a = 20.9, b = 12.1,
  • 置信水平在统计学中,一个概率样本的置信区间(英语:Confidence interval,CI),是对产生这个样本的总体的参数分布(Parametric Distribution)中的某一个未知参数值,以区间形式给出的估计。相对于
  • 考拉海购考拉海购,原名网易考拉,是一个跨境购物网站,于2015年1月9日成立。2016年,获得国内跨境电商中首张“B2C商品类电子商务交易服务认证证书”。2019年1月,于杭州湖滨银泰开设第一家线
  • 森都利亚大会森都利亚大会或百人队会议 (拉丁语:comitia centuriata)为古代罗马共和国三大投票会议之一。相传为第六代国王塞尔维乌斯·图利乌斯创立,参加该大会不分是罗马人民还是平民,凡是
  • 硒酸硒酸是一种无机酸,化学式为H2SeO4。它是硒的含氧酸,它的结构可以更准确地被描述为(HO)2SeO2。根据价层电子对互斥理论的推测,中心的硒是四面体的,其中Se-O键长为161pm。在固态,它