他是世界上最杰出程序员之一,1 个月写了个操作系统,退休后去做飞行员!...

1. 我心目中的顶级程序员(Java生态) Ken Thompson Ken Thompson,1983年图灵奖得主,获得国家技术奖章 (UNIX之父) 贡献:C语言,UNIX操作系统(主导), Regular Expression, 定义UTF-8, Go语言共同作者 2000年退休,离开贝尔实验室,成为一名飞行员 2006年,进入Google,开发Go语言 Dennis Ritchie Dennis Ritchie, 1983年图灵奖得主,获得国家技术奖章 (C语言之父) 贡献:C语言(主导),UNIX操作系统,《C 语言程序设计》 名言: 阅读详情
点击上方“Github爱好者社区”,选择星标
回复“资料”,获取小编整理的一份资料

1983 年,美国计算机协会将图灵奖授予肯·汤普森和与丹尼斯·里奇。

获奖理由是:“For their development of generic operating systems theory and specifically for the implementation of the UNIX operating system.”

翻译过来就是:

“授予肯·汤普森和与丹尼斯·里奇图灵奖,以表彰其在通用操作系统理论领域的贡献,特别是UNIX操作系统的开发与实现。”

老读者知道,老K每次装逼都会引用一段英文,不过这次不是要显摆自己,而是要介绍本文的主人公,肯·汤普森。

在许多读者都还没出生的年代,他就已经取得了计算机界的最高荣誉--图灵奖。

01

计算机天才养成记

肯·汤普森出生于1943年。在他小学的时候,有一堂课讲到了二进制,喜欢逻辑的他立刻被吸引住了,在兴趣的驱使下,他做了很多相关的二进制计算,并借助一台十进制计算器将其扩展到各种进制。

其实,老K小时候也有类似的经历,我上初中的时候对物理非常着迷,很早就开始研究,牛顿的头发是在哪烫的?我想,我的物理老师,就是从那个时候开始有心理阴影的。

肯·汤普森,从小就是妥妥的学霸一枚,边玩边学,轻松考上了加州大学伯克利分校,攻读电子工程学士学位。

虽然,国外的大学不像国内这么轻松,随便放飞自我。但是,对于肯·汤普森这样的大神来说,课程so easy,哪里不会点哪里。

于是他迷上了一个新玩意:计算机。

每天晚上,趁着没人的时候,他就偷偷溜进机房,自学了编程,编写游戏、玩游戏,嗨到不行。

大四那年,大神心里还是有点B Tree的,因为觉得自己不务正业,都在玩游戏和编程,电子工程没怎么好好学,所以没有申请读研究生。

正当他准备卷铺盖毕业的时候。一位教过他的老师Berlekamp教授替他申请了研究生,并且通过了,多好的教授啊!

回想起老K大学时候的教授,我的论文改了八回,答辩两次才勉强毕业。同样都是教授,怎么差别就这么大呢?当然了,同样是学生,差别就是这么大。

在研究生阶段,肯·汤普森只用了一年就毕业了,你没看错,他只用了一年就拿到了电子工程和计算机科学的硕士学位。

02

加入贝尔实验室

研究生毕业后,肯·汤普森的才华惊动了当时大名鼎鼎的贝尔实验室,并且向他伸出来橄榄枝。但是,肯·汤普森却看不上,他心想我这么年轻,有才华,又有头发,应该有机会改变世界的。

但是,在贝尔实验室的再三邀请之下,他还是勉强答应去参观一下。


这一参观不要紧啊,他发现汉明码发明人、信息论发明人、晶体管发明人......这些牛逼闪闪的人物,都出自贝尔实验室。

肯·汤普森心想,像我这样的天才不就应该来这里吗?于是他接受了贝尔实验室的Offer。

贝尔实验室

03

搞砸 “Multics操作系统”项目

1966 年,肯·汤普森加入贝尔实验室,与丹尼斯·里奇(就是文章开头,一同获得图灵奖的另一位大神)一起参与名为 “Multics操作系统”的项目开发。

那个时代的计算机系统还处在批处理的阶段,只能在既慢又笨重的大型机器上工作,要先将程序卡片装入设备,然后等1个小时后才能取运算的结果。不仅慢,还很废纸。

因此,贝尔实验室联合麻省理工学院,以及通用电气公司,想建立一套可以多人使用、多任务、多层次的 Multics 操作系统。

但是,由于大家太过追求完美,导致开发周期过长,成本高,短期内看不到产出。论敏捷交付的思想的重要性啊,可惜那个年代大家并不那么想。

1969 年的时候,贝尔实验室忍无可忍,决定退出这个项目。

对于程序员来说,搞砸一个项目是很稀松平常的事情,就像老K这10几年的职场生涯搞垮过的项目,都可以写出“搞垮系列”了。


但是让肯·汤普森失望的是,再也不能玩自己写的名为“star travel”的游戏了,因为这个游戏完全是基于 Multics 的。你看看大神,玩游戏才是主业,上班只是兼职而已。

04

为了玩游戏,开发了UNIX

既然这样,那就自己开发个操作系统吧,这样就可以继续玩游戏了。


有技术就是任性啊,一言不合就开发个操作系统。所以千万不要把程序员逼急了,他们连操作系统都能做,还有什么事情做不出来?


肯·汤普森找到了一台废弃已久的老式 PDP-7小型机,虽然称为小型机,那时候也有一个房间那么大!在这台机器上他首先重写了游戏,游戏有了后,肯·汤普森还想着要开发一个全新的操作系统。

正好这个时候,他的老婆带着孩子回娘家住3个礼拜,也就是说他有完整的3个礼拜没有人打扰的时间。

于是他决定利用这段时间开发操作系统,基于之前搞砸“Multics系统”的经验,他很快完成了内核系统、文件系统、编辑器、编译系统,一个月时间竟然编写完了操作系统的内核。

这个故事告诉我们,一个男人想要搞大事,老婆不在家是多么的重要!K嫂你看到了吗?看到了吗?老K这把年纪一事无成,是有原因的。一天查岗八回,就算你是王者,也荣耀不起来啊?

话说这个系统做完后,肯·汤普森将其命名为 UNiplexed Information and Computing System,缩写为 UNICS 。但是怎么念都拗口,后来改名为UNIX,陆续做了一些改动后,第一版UNIX操作系统诞生了。

那一年,肯·汤普森年仅26岁。

05

UNIX 跟C语言更配

1973 年的 10 月,在 IBM 举办的操作系统原理专题研讨会上 ,UNIX首次向世界问好,当肯·汤普森和与丹尼斯·里奇向人们宣读论文并展示了UNIX后,整个会场轰动了,人们惊呼:卧槽,牛逼,还能这么玩!


后来随着UNIX的用户越来越多,肯·汤普森和与丹尼斯·里奇决定将UNIX进一步改写,以便可以移植到各种不同的硬件系统。


由于UNIX的源码中不少是用汇编完成,不具备良好的移植性,正好丹尼斯·里奇在 1973 年在 B 语言的基础上开发出了 C 语言。C 语言灵活,也更高效,与硬件无关,并且不失其简洁性,正是UNIX移植所需要的法宝。

于是旧版的UNIX与 C 语言完美结合在一起,产生了新的可移植的UNIX系统。随着UNIX的广泛使用,C 语言也成为了当时最受欢迎的编程语言,一直延续至今。

UNIX经典的设计哲学KISS,就是在那个时候被提出来的——Keep It Simple, Stupid。

06

黑客与“后门”

肯·汤普森还有一个备受争议的行为,就是在UNIX里留后门。是的,这哥们竟然在代码里下毒。

最开始的时候,UNIX系统在贝尔实验室是供大家免费使用的。有人发现,肯·汤普森总能进入每个人的账户,于是一位同事就分析UNIX代码,重新编译了系统。

令人意想不到的是,肯·汤普森还是能进入他们的账户,贝尔实验室的科学家们却对此束手无策。


直到1983年,肯·汤普森在他的图灵奖获奖感言里揭示了这一秘密,原来,让他轻松“侵入”各位同事账户的秘诀不在UNIX代码,而在编译UNIX代码的C编译器里,而肯·汤普森正是编译器的开发者。这个操作666,你以为看透了大神,可你就是玩不过他。

那位头发比他多,胡子跟他一样长的自由软件之父、著名黑客--理查德·斯托尔曼,曾这样定义过黑客,一名黑客必须包含三个特点:好玩、高智商、探索精神,而且三项必须同时满足。

黑客追求的不是实用性技术或金钱。老K作为一名技术从业者,经过多年的努力,我已经满足了黑客精神的其中一点:好玩。当然了,主要是被别人玩。

自由软件之父 理查德·斯托尔曼

或许从这个角度,更能理解肯·汤普森的行为,他并非违背了道德准则,对他来说这个事就是一逗乐。不难发现,黑客的价值观跟德云社还挺配的。

07

加盟Google,参与Golang语言开发

2000年,57岁的肯·汤普森在贝尔实验室退休。是的,这哥们的整个职场生涯都是在贝尔实验室度过的,期间有几年去了大学教UNIX系统课程。

然而,退休后这位老爷子也闲不住。


2006 年,肯·汤普森加入了 Google 公司。看看吧,谁说程序员做到35岁以后就找不到工作?关键还是技术过硬,别做了10几年技术还是写CRUD。玩技术的要么越钻越底层,要么就高屋建瓴搞架构,千万别原地踏步。

加入谷歌后,肯·汤普森又搞了一件大事。

他跟其它优秀的科学家一起开发了Go语言,也就是Golang。主要开发者有:肯.汤姆逊(Ken Thompson)、罗布.派克(Rob Pike)和罗伯特.格里泽默(Robert Griesemer)。另外两位也是大神,有机会再仔细写写。

Go语言不用多介绍了,有人形容Go语言:Go = C + Python , 说明Go语言既有C静态语言程序的运行速度,又能达到Python动态语言的快速开发。

国内不少科技公司都是Go的拥护者。比如七牛云的CEO许式伟,就是国内较早一批Go的使用者,他还出版了《Go语言编程》一书。

08

写最骚的代码,开最酷的飞机

肯·汤普森并没有像许多技术大神那样,走上技术创业的道路,成就更大的商业梦想。

他在贝尔实验室、谷歌,一直从事自己热爱的开发工作。

除了写程序之外,肯·汤普森是一位狂热的飞行爱好者,并且还获得了飞行执照。

闲暇之余,他会跟同事们一起自驾,来一场说走就走的飞行。你不用羡慕大神的生活,其实你也可以拥有,但首先你得有架飞机。

没有飞机也不用沮丧,说不定哪天,你用滴滴打飞机,就能叫到他。

你以为大神光是开私人飞机就完事了?肯·汤普森就算是爱好也要玩到极致。

1992年他特意到莫斯科,玩了一把米格29战斗机。不想开战斗机的飞行员不是好骑手。有钱、有闲、有胆,就这么任性,你有办法吗?

09

结语

肯·汤普森,对计算机软件业的发展,贡献是巨大的。不仅是UNIX系统发明人,在他的职业生涯里还开发了B程序语言(C语言的前身),UTF-8编码,ed文本编辑器,以及参与开发了Go程序语言。

除了获得图灵奖之外,他还先后获得了多项至高荣誉:

1994年,他获得了IEEE(电气和电子工程师协会)计算机学会先锋奖。


1998年,被授予美国国家科技奖章。


1997年,入选计算机历史博物馆名人录。

......

 

最后,以作家罗兰的一句名言与你共勉:“成功的意义应该是发挥了自己的所长,尽了自己的努力之后,所感到的一种无愧于心的收获之乐,而不是为了虚荣心或金钱。”

好啦,今天的分享就到这儿啦,我们下次见啦~



GitHub原创推荐•  尼玛,Github上最邪恶的开源项目了!未满18或者女孩子勿进哦~•  GitHub标星4K+,前字节跳动工程师开源的刷题笔记...•  GitHub上这个仿京东电商项目强势开源,前端,后台,数据库等统统都有!•  GitHub 开发者自制火星车,教程全面开源!网友:这才是大佬!关注「Github爱好者社区」加星标,每天带你逛Github好玩的项目
阿里中台架构研究_技术领导力_老K(100页ppt).pdf 立即下载

相关推荐

Tesseract OCR 字库训练教程:提高识别率进阶版

通过 Tesseract 字库训练,你可以提高 OCR 对特定文本或字体的识别能力。训练过程包括准备训练数据、生成标签文件、运行训练工具,以及将训练结果集成到实际项目中。虽然训练过程需要一些时间和精力,但对于需要高精度文本识别的场景来说,字库训练是非常有效的提升识别率的方法。

小蜗牛的珍贵百宝箱 1867

他是世界上最杰出的程序员,一个月写了个操作系统,退休后去做飞行员!

作者|Mr.K 整理| Emma来源|技术领导力(ID:jishulingdaoli)1983 年,美国计算机协会将图灵奖授予肯·汤普森和与丹尼斯·里奇。获奖理由是:“For th...

技术领导力 957

ESD镜像解密与转换全攻略:从esd-decrypter到WinNTSetup的完整流程

本文详细解析了ESD镜像的加密特性与压缩优势,并提供了从解密到转换的完整实战指南。核心步骤包括使用esd-decrypter工具解密ESD文件为WIM格式,以及如何结合WinNTSetup进行灵活的系统安装或进一步封装为可引导的ISO镜像,帮助用户高效处理官方Windows安装镜像。

weixin_29207439的博客 451

小C说历史(人物介绍第二篇):Unix之父 C语言之父 伟大的Ken Thompson 肯·汤普森

在暑假里,他想方设法弄到了解释程序的源代码清单,在不懂程序语言的情况下,仔细研读,终于学会了编程,并在学校找到编程的工作。正式推出后,改写了计算机的历史。Unix之父——肯•汤普森(Ken Thompson)被称作“世界上最杰出的程序员”,他自学编程,26岁创造Unix,改写了计算机操作系统的历史,并在古稀之年成为Go语言的共同开发者之一。1973年10月,在IBM举办的操作系统原理专题研讨会上,汤普森与里奇宣读了相关的论文并展示了Unix,整个会场为之轰动,大家都立即涌上来索取这种新型的操作系统的程序。

Corey11的博客 4271

ZEMAX优化方法---【Zemax学习】

在光学系统自动设计中,优化设计是光学设计中的重要阶段,也是ZEMAX软件的核心功能,涉及评价函数、权因子、阻尼因子等重要概念。在常用的阻尼最小二乘法优化设计的基础上,ZEMAX给我们提供了三种优化选择:Optimization(局部优化)、Global Search(全局优化)和 Hammer Optimization(锤形优化)。

yh的博客 4448

Quartus (Quartus Prime 18.1)的安装及仿真步骤

前两天做计组的课设需要用到Quartus 这个软件,但安装有点麻烦,在网上搜了很多教程,发现都是旧版本的,最后弄了好半天才把环境搭建好。所以,分享一下它的搭建过程。 因为我不经常用它,所以安装的版本是精简版的其他版本的也应该差不多以下是需要下载的安装包: 准备: Quartus Prime 精简版,最新发布: v18.1 1. QuartusLiteSetup-18.1.0.625-wi...

weixin_41082948的博客 8万+

26岁创造UNIX,退休后却成为一名飞行员,这位编程界大佬不走寻常路

肯·汤普森,图源:维基百科UNIX 之父、图灵奖得主、C 语言的前身 B 语言的开发者、操作系统 Plan 9 的主要作者、Belle(一个国际象棋程序)作者之一,这些成就都出自一人之手...

图灵教育 2488

Python从0到100(二):Python语言介绍及第一个Pyhon程序

Python从0到100(二):Python语言介绍及第一个Pyhon程序。与C和Java比,Python的学习成本和难度曲线不是低一点,更适合新手入门,自底向上的技术攀爬路线。

拥有百余位万粉技术博主、200余位可合作代发博主,私域技术社群规模达千人,商务合作私信 5440

世上最杰出程序员,B 语言、Unix 之父嫌计算机发展太慢,让孩子学生物?

作者 | 年素清责编 | 伍杏玲出品 | 程序人生(ID:coder_life)Unix之父——肯•汤普森(Ken Thompson)被称作“世界上最杰出的程序员”,他自学编程,26岁创...

程序人生的博客 2839

在 Linux 64 位上遭遇 Signal 7 与 ST22 SYSTEM_CORE_DUMPED:从 es/implementation=std 到 /dev/shm 的一套落地排查法

摘要: Linux 64位SAP系统出现SYSTEM_CORE_DUMPED和Signal 7(对应SIGBUS)错误时,核心问题是进程因共享内存资源异常被操作系统强制终止。主要诱因包括:1)/dev/shm的tmpfs默认容量不足(通常仅占物理内存50%);2)SAP内存管理参数es/implementation=map在64位场景下的敏感性。解决方案应双管齐下:在实例profile设置es/implementation=std以降低对tmpfs的依赖,同时按(RAM+Swap)*75%重新配置/dev/

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 164

OpenHarmony Stage模型深度解剖:从Ability Kit到沙箱隔离的全链路底层原理

基于微内核架构,提供进程管理、内存管理、IPC通信等基础能力:包含V8引擎、ArkTS运行时、渲染引擎等核心组件:Ability Kit框架,提供应用生命周期管理、组件调度等能力:基于Stage模型的应用程序。

m0_67505153的博客 191

他 1 个月写了个操作系统,退休后去做飞行员!

见字如面,我是军哥!周末了,来看篇轻松的文章。1983 年,美国计算机协会将图灵奖授予肯·汤普森和与丹尼斯·里奇。获奖理由是:“For their development of gener...

chengjun_java的专栏 409

使用STM32H7点亮RGB屏幕

希望本文能对你有所帮助!RGB屏幕是一种具有红、绿、蓝三种颜色通道的显示设备,通过控制每个通道的亮度,可以显示出丰富多彩的图像和动画。要使用STM32H7控制RGB屏幕,我们需要连接适当的引脚,并编写适当的代码来控制每个颜色通道的亮度。在主循环中,我们先点亮红色通道,然后延迟一段时间,接着点亮绿色通道,再延迟一段时间,最后点亮蓝色通道,并再次延迟。需要注意的是,示例代码中的延迟循环使用了一个简单的计数器实现,但实际应用中可能需要更精确的延迟方式,例如使用定时器中断或操作系统提供的延迟函数。

QoyOle的博客 924

关于计算机语言最高奖项 "图灵奖" 的12位得主!你认识几个?

图灵奖(Turing Award)于1966年设立,奖励在计算机领域作出杰出贡献的个人(1966年至2019年共73名获奖者)。图灵奖的获奖条件极高,评奖程序也极严,每年通常只奖励一名计算机科学家,只有极少数年度有两名合作者或在同一方向作出贡献的科学家共享此奖,但2019年的图灵奖由Geoffrey Hinton, Yann LeCun,和Yoshua Bengio(深度学习的三位创...

HUYA69的博客 9941

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

再见了,学术硕士!

点击上方“码农突围”,马上关注 这里是码农充电第一站,回复“666”,获取一份专属大礼包 真爱,请设置“星标”或点个“在看 文章来源:http://www.ruanyifeng.com/b...

欢迎关注公众号:【码农突围】,回复9999,可以获取一份LeetCode刷题笔记 205

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

韦神!北大数学系韦东奕爆红!拒绝哈佛offer,留任北大!

点击上方“码农突围”,马上关注 这里是码农充电第一站,回复“666”,获取一份专属大礼包 真爱,请设置“星标”或点个“在看 新智元报道 ,来源:weibo一瓶矿泉水,三个馒头,就是一...

欢迎关注公众号:【码农突围】,回复9999,可以获取一份LeetCode刷题笔记 678

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

2022-9月报

关于单元测试这件事,我觉得最重要永远是写单元测试的人,优秀的团队文化非常重要,没有什么能够真正衡量单元测试做的好坏,有的只是程序员的职业操守。我们花了很大的篇幅讨论有效单元测试的重要性以及如何写出有效的单元测试,不得不承认单元测试有一定的成本,真正实践依然需要很多的路要走,需要我们在实践中定义好单元测试的边界,找到最适合团队的最佳实践。除了提升播转率之外,对于平台价值和用户价值而言,还有其他一些重要的业务目标的决策也需要数据洞察来指明方向。包括如何提升用户观看时长,如何促进用户活跃,如何增长会员收入等等。

天空24的专栏 1825

EDSAC计算机之父——Maurice Wilkes

1951年5月15日,在英国,BBC频道播出了三个人的演讲,其中有两位大名鼎鼎:一位是计算机科学之父艾伦·图灵,另一位是图灵的导师、剑桥数学家纽曼。那么第三个人是谁呢?谁有资格跻身如此阵容呢? 他叫Maurice Wilkes。 Wilkes,1913年出生于英国,1931年进入剑桥大学,后又进入卡文迪什实验室。1936年获得物理学博士学位,论文题目是《关于甚长无线电波在电离层中的传播特性》。...

《程序员》官方BLOG 904

「博文视点」专访黄哲铿/ Mr.K:未来三年,如何努力?如何赚钱?如何发展?...

来源:博文视点Broadview寒冬之下,大部分公司采取裁员、冻结招聘等措施,而据媒体报道,推特新老板埃隆·马斯克给员工发了一封邮件,他们被告知必须在美东时间周四晚上之前做出选择,要么继续长时间高强度工作,要么接受相当于 3 个月工资的遣散费。如今,寻到工作机会不易,工作同样需要努力,大家都不容易!很多小伙伴可能对自己未来的道路都会有些迷茫,如何在当前环境下保持自身价值,并能够有所突破得到更好的发...

技术领导力 1185

硅谷传奇:UNIX操作系统之父——丹尼斯·里奇和肯尼思·汤普森

“我们只是想为自己创造一个更方便的编程环境,并希望其他人也能喜欢它(UNIX)。” -丹尼斯·里奇和肯尼思·汤普森在1983年图灵奖颁奖仪式上的讲话 遭遇UNIX,对我来说是一件很有趣的事。当年来美之前,在国内接触过VMS和DOS操作系统。尽管用的不多,但还算是一个较熟的用户。来美后,电机系研究生用的系统只有UNIX。为了适应UNIX费了很长时间,但熟悉了UNIX之后就知道它的好了。从此后,只要提到操作系统,在我这里就只有UNIX了。对于吃工科饭的人来说,离开了UNIX还真的不行。就我现在的工作

hxsln11的博客 3324
上一篇: GG哥回馈粉丝,送30本技术书!绝逼都是好书
下一篇: 腾讯开源又一力作
公众号:【GitHub爱好者社区】
博客等级 码龄6年 353粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值