Eileen'blog

番外四:林纳斯·托瓦兹——那个为自己写玩具的芬兰人

2026-05-10T09:11:00 文章

1970年代,芬兰赫尔辛基,一个头发乱蓬蓬的小男孩趴在外公的Commodore VIC-20电脑前,手指一个键一个键地敲着Basic程序。屏幕上光标闪动,他敲完最后一行,按下运行键,电脑忠实地执行了他的命令。

这个小男孩当时不知道,他正在敲下的是自己一生的起点。

如今,他的名字叫林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds) 。他21岁时写的一个“小爱好”,30年后跑在全世界的服务器、超级计算机、智能手机上。他还写过另一个工具,十天时间完成,叫git,已经成为全球软件开发者的标配。

如果你觉得“Linux之父”这个标签太遥远,不妨先听一个故事:一个芬兰学生,只是为了“了解自己的新电脑”,写了一个操作系统内核。发出邮件的时候,他根本没想到,这个请求会被下载、会被无数人修改、会成为全世界最主要的操作系统之一。

“我一开始并没想做一个世界级的操作系统。”

这就是林纳斯。


一、赫尔辛基的雪与键盘

林纳斯·托瓦兹于1969年12月28日出生于芬兰赫尔辛基。他的家族很特别——属于芬兰仅占6%的少数民族芬兰瑞典人,家庭成员几乎都是记者、诗人、教授。父母早在林纳斯年幼时就离了婚,所以他大部分时间跟母亲和外公生活在一起。

外公Leo Törnqvist是赫尔辛基大学的统计学教授,也是林纳斯生命中最重要的人之一。老爷子在他十岁左右时买了一台Commodore VIC-20——一台当时流行的家用电脑,内存只有5KB,外接一个普通的盒式录音机用于加载磁带程序。

林纳斯回忆说:“我孩提时代最幸福的事情,就是玩外公的那台老式电子计算机。”在别人家的孩子还在踢球的时候,林纳斯坐在屏幕前,从外公那里学会了Basic语言,开始琢磨怎么让电脑听自己的话。

VIC-20之后是Commodore 64,然后是一台Sinclair QL——这台电脑最让他着迷的是可以从英特网下载程序,虽然那时还没有“互联网”,只是一些BBS系统。他后来回忆说:“那时我发现,世界上有一些人和我一样,喜欢把计算机拆开又装上。”

这种“动手”的基因,从他12岁开始就刻进了骨头里。


二、为什么一个21岁的学生要写操作系统?

1990年代初,大学里的计算机老师喜欢给学生用MINIX——一个由荷兰教授安德鲁·坦能鲍姆(Andrew Tanenbaum)写的教学用类Unix操作系统。MINIX的设计初衷很简单:让学生看懂操作系统是怎么工作的。

但弊端也很明显:它故意不做高性能,不做真正的内存分页,不支持多任务抢占调度。

林纳斯当时在赫尔辛基大学学习计算机。他在一台MicroVAX机上跑着Ultrix(DEC公司的Unix版本),但他更习惯用自己宿舍里那台IBM PC——那是他用暑假打工的钱和父母资助攒出来的,一台33MHz 386 CPU、4MB内存、40MB硬盘的机器。

他已经对MINIX不满意了。它太“教学化”,不够“真”。

1991年3月29日,他在comp.os.minix新闻组发布了第一条帖子:“大家好,我已经运行Minix一周了,现在升级到386-Minix(很好用),准备下载GCC……”十天后,面对另一个用户的提问,他回了一句后来被开源世界传颂的名言:“RTFSC (Read the F***ing Source Code :-)”

你看,这个芬兰学生从一开始就是这样——别废话,自己去看代码。

真正宣告Linux诞生的时刻在1991年8月25日。林纳斯在comp.os.minix新闻组发了一封著名的邮件:

“Hello everybody out there using minix——

I‘m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386(486) AT clones.

This has been brewing since april, and is starting to get ready.”

“只是一个爱好,不会像GNU那样大,也没那么专业。”

这句话后来成了科技史上最著名的低估之一。

当年的10月5日,Linux内核0.02版发布,他把源码上传到了芬兰大学和研究网(FUNET)的FTP服务器,最初的版本只有10239行代码。下载了补丁的全球开发者开始给他发邮件,提建议,写驱动。

在接下来的一年里,林纳斯继续学习MINIX和使用它来开发新系统。他的内核初期还用着MINIX的文件系统和目录布局——你可以在初代Linux内核的代码树中看到MINIX的痕迹。但林纳斯已经声明:“该内核完全不包含MINIX的代码,使用了386的任务切换等特性,目前只支持AT硬盘,因为我只有这个。”

1992年1月,坦能鲍姆在新闻组里跟林纳斯展开了一场著名的论战:微内核优于单内核。坦能鲍姆说:“Linux过时了。”林纳斯回应:“我承认微内核可能更好,但在现实中,我的代码能跑,而你的理论再漂亮也没人用。”

谁赢了呢?你打开手机应用商店看看,安卓的世界。


三、为什么理查德·斯托曼会影响林纳斯?

林纳斯的Linux内核是从0.01开始开放的,但在早期,他不是冲着“自由软件运动”去的。他更多的是想:“我把它放在这里,大家喜欢就用,不喜欢就改。”

但在自由软件之父理查德·斯托曼(Richard Stallman) 的精神感召下,林纳斯很快以Linux的名字把这款类Unix的操作系统加入到了自由软件基金会(FSF)的GNU计划中,并通过1989年GNU通用公共许可证第二版(GPLv2) 授权。他允许用户销售、拷贝并且改动程序,但必须将同样的自由传递下去,必须免费公开修改后的代码。

这意味着任何人都可以取得Linux的源码,修改它,然后在自己的电脑上跑起来——只要他们遵守相同自由的条款。GPL协议由此变成开源世界的“宪法”,而Linux内核正是这一宪法最成功的实践。

如果当年林纳斯选择了自己的许可证,可能就不会有如今遍布全球的安卓、嵌入式系统和超级计算机中心的Linux内核。

到1996年,Linux已经吸引了全球大批程序员加入开发。也就在这时,林纳斯做了个出人预料的决定——他要离开芬兰,去美国硅谷


四、全美达和OSDL:从芬兰到硅谷

1996年底,林纳斯突然离开赫尔辛基,只身奔赴美国加州硅谷,成为全美达公司(Transmeta Corporation) 的一员。全美达是一家由微软联合创始人保罗·艾伦等资助的芯片设计创业公司,主打低功耗CPU,但他们的工作高度保密。

很多人当时担心他的离开会给Linux的发展带来致命打击——但事实证明,这个担心彻底多余。

全美达并不开发和销售运行Linux的硬件设备,但合同允许林纳斯有时间为Linux内核继续工作。他白天在全美达写低功耗芯片的软件,深夜和周末继续主导内核开发。这份工作他一直做到2003年。

2003年7月,林纳斯加入开放源代码开发实验室(OSDL) ,这是一个由IBM、惠普、英特尔、AMD、红帽等巨头支持的非营利组织,专门为他提供薪水,让他全职维护Linux内核。

“终于可以专职写内核了。”

2007年,OSDL与“免费标准集团(FSG)”合并,成立了Linux基金会,林纳斯至今仍是基金会特聘的开发人员,继续负责内核的最终裁决者角色。


五、十天写完一个版本控制软件:Git的诞生

2005年4月,一篇帖子在Linux内核开发者邮件列表里爆炸。

多年以来,Linux内核开发使用的版本控制系统是BitKeeper——一个由BitMover公司开发的专有软件。由于2002年开始BitMover免费许可开源开发者使用,它的单向克隆等特性方便了内核的分布式管理系统。

但内核开发者之一安德鲁·特里奇(Andrew Tridgell) 为了能更好地参与贡献,写了一个能访问BitKeeper数据的开源工具——这一行为被BitMover认为触犯了他们商业版本的边界。经过几个月的谈判,BitMover于2005年4月5日正式宣布:撤回免费许可。

林纳斯在邮件列表中称特里奇的工具“就是个坏项目”,引起不小争议。但事实证明,他是带情绪骂了一句,但他的行动更快:仅仅十几天后,2005年4月20日,他完成了有确切日期的早期git提交,原型已经能接管内核开发。

他把自己锁在房间里过了一个周末——不长不短的四天。之后一周继续打磨——第一天:基本数据结构(有向无环图DAG)。第二天:对象存储和索引。第三天:打包和网络传输。第四天:工具集的命令行接口和文档。整个过程干净利落。

为什么这么快?“git的设计建立在一条核心原则之上:你每天做的一切操作,响应时间都应该少于1秒。”林纳斯在后来的采访中说。

他做到了。分布式的架构、本地有完整历史、根本不用中心服务器托管——这套架构完全不同于当时任何集中式版本管理软件。git在3.0版本之前就成为全世界开发者最信赖的版本控制系统。后来出现的GitHub、GitLab、Bitbucket等全部构建在林纳斯那份十日设计之上。


六、工作和家庭:不乱、不贪、不抱怨

在科技圈,“林纳斯·托瓦兹”这个名字经常与Linux内核、开源运动、Git一起出现。但这个芬兰人从来不觉得自己是摇滚明星。

他的生活很简单。他与前芬兰女子空手道冠军托芙(Tove)结婚,育有三个女儿。他常年背着一个破旧的背包,穿着T恤和牛仔裤出席任何技术峰会。他的口头禅是不空谈、不抱怨——你的代码若比他写的好,他让位;你的代码若bug百出,他的批评直截了当,不留情面。

很多人都好奇他的个性为什么这么“直来直往”。他的父亲说过,林纳斯似乎从很早就知道他想做什么——不是跟别人竞争,而是跟自己较劲。这是一种来自童年的自信:一个孩子在外公的Commodore电脑前,就已经知道自己能做的比别人做出来的东西更好。


七、Linux内核的持续维护

今天的Linux内核是世界上最大的开源协作项目。每年有数千名开发者从全球各地提交补丁,新的内核版本几乎每隔两三个月就会发布一次。

2002年以前,补丁大多靠Linus手工合并,效率低,经常出现冲突。后来引入BitKeeper的年代,他发现分布式、异步提交的方式能让开发变快。2005年Git诞生后,流水线化了。

2024年底,Linux内核代码总行数已达3500万行以上,但它的核心架构依然透明、模块化、单一内核——回到1991年林纳斯第一次发邮件时说过的“单块设计效率高”的设计原则。

他也在适应新的时代。2022年12月,Linux 6.1内核中正式引入了Rust语言的实验性支持。2025年4月,他公开批评某文件系统大小写不敏感的设计是“巨大错误”,语气一如既往直来直去。2026年1月,61岁的托瓦兹在GitHub上发布了使用AI编程工具完成的全新个人音频项目AudioNoise。

这个60多岁的Linux内核维护者和开源世界的独裁者,对技术本身的好奇心从未减退。


八、那些把“重要”写进历史的人们

2004年,《时代》周刊将林纳斯列为全球最具影响力100人之一。1999年,《时代》组织读者投票评选20世纪100位最重要人物——林纳斯排在第15位,盖茨排在第17位。

他还获得过无数荣誉:1998年电子前沿基金会先锋奖、2000年英国计算机学会勒芙蕾丝奖章、2008年武田社会与经济福祉奖、2010年日本C&C奖、2012年芬兰千禧年科技奖、2014年IEEE计算机先驱奖……

不过林纳斯本人对奖项的态度是:这些是大家对开源社区的一种认可,不是对他个人的。他始终把自己当作一个人,而不是神。

但也许最形象的定义来自美国《时代》周刊当年评价他时写下的那段话:“有些人生来就具有统率百万人的领袖风范;另一些人则是为写出颠覆世界的软件而生。唯一一个能同时做到这两者的人,就是托瓦兹。”


尾声:谁是林纳斯·托瓦兹?

有人说,林纳斯·托瓦兹是“自由主义教皇”;有人叫他“Linux之父”;也有人提起他只记得那1991年夏天、那封“只是个爱好”的邮件。

但今天,如果你走进世界任意一个后端工程师的办公室,你极大概率会看到屏幕里运行的Linux或macOS(它继承了Unix的传统),极大概率会用Git命令打卡——那是林纳斯·托瓦兹的第二个杰作。

普通人看,他只是一个芬兰男人,身材普通,说得最多的口头禅就是“动手干”——用代码说话。但就是这样一个人,用一头乱糟糟的头发和一台386电脑,把整个地球的软件生态引上了一条开放和协作的路径。

1980年代在外公的VIC-20前敲Basic时,他不能预见自己的未来会在1991年8月25日的那条帖子中出现转折。但后来发生的所有事情都说明了一个道理:让世界变的不是伟大的野心,而是某个寻常人用日积月累的程序构建出的大于他自己的东西。

1991年8月25日——林纳斯·托瓦兹发了一封邮件。他写完正文,打了署名,按下了发送键。

然后不知道这一天,后来会变成电子工业的一颗核弹。

番外后记:林纳斯至今仍保持着他芬兰式的坦率的性情, 在公开场合和邮件列表中和往常一样犀利、幽默而带着芬兰人独有的低调。有人问他未来怎么办,他回答通常还是一样:“看我的代码,别猜我下一行干什么。”