红联Linux门户
Linux帮助

李纳斯?托沃兹,Linus Torvalds自传

发布时间:2009-10-30 11:05:33来源:红联作者:kelong2005
Just For Fun by Linus Torvalds

Just for Fun

---Linus Torvalds自传

[美]李纳斯?托沃兹,大卫?戴蒙

1
Just For Fun by Linus Torvalds

前言:生活的意义 ...........................................................................................................................2
    第一章 一个书呆子的诞生 .............................................................................................6
1、大鼻子的孩子 .....................................................................................................................6
2、外公的计算机 .....................................................................................................................8
3、芬兰的严冬 .......................................................................................................................10
4、我的家族 ...........................................................................................................................11
5、中学时代 ...........................................................................................................................17
6、长大成人 ...........................................................................................................................18
7、爱洗桑拿的国家 ...............................................................................................................20
第二章 一种操作系统的诞生 .......................................................................................................23
1、昨天的电脑.........................................................................................................................23
2、上大学 ...............................................................................................................................28
3、从UNIX开始 ...................................................................................................................30
4、第一台386和终端仿真 ...................................................................................................33
第三章 编程的美妙 .......................................................................................................................40
1、开始编程 ...........................................................................................................................40
2、长腿的终端仿真器 ...........................................................................................................42
3、寻求网上帮助 ...................................................................................................................43
4、Linux .................................................................................................................................44
5、开放源代码 .......................................................................................................................47
6有了用户 ................................................................................................................48 、Linux7能换来金钱吗? ....................................................................................................51 、Linux8对Linux ................................................................................................................53 、MINIX9.......................................................................................................................62 、最后的冲刺
10................................................................................................................................66、塔芙
第四章 舞会上的国王 ...................................................................................................................67
1.............................................................................................................67 、1.0版本闪亮登场
2...........................................................................................................................70 、版权之争
3..............................................................................................................................74 、去硅谷
4Transmeta............................................................................................76 、在 领地上的生活
5...................................................................................................................78 、欢迎来到硅谷
6...................................................................................................................81 、一夜功成名就
7.......................................................................................................................89 、财富的到来
8...................................................................................................................92 、糟糕的展示会
9.......................................................................................................................95 、媒体的攻击
10...............................................................................................................101 、舞会上的国王
11.......................................................................................................................103、还会再干
第五章 知识产权 .........................................................................................................................105
1.........................................................................................................................105 、各种观点
2.........................................................................................................................111 、结束控制
3.............................................................................................................113 、未来的娱乐之旅
4.............................................................................................................116 、为何开放源代码
5.....................................................................................................................121 、名声与财富
6.....................................................................................................................125 、生活的意义
2
Just For Fun by Linus Torvalds

前言:生活的意义

(性、战争、Linux)
背景:这本书开始写于一辆黑色的福特牌汽车上。
这辆车沿着州际五号公路朝南开去,行驶在加利福尼亚中部山谷的某个地方。李纳斯?托沃

兹、他的妻子塔芙?托沃兹、他们的两个小女儿帕特里夏和丹妮亚拉,在一个外人的陪同下,
旅行351英里去洛杉矶参观那里的动物园和一家宜家家居商店的分店。
大卫:我现在正在思索一个最基本的问题,而且非常重要。你在这部书里想表达什么?
李纳斯:我想解释生命的意义。

塔芙:李纳斯,你没有忘记给车子加油吧?
李纳斯:我对生命的意义有种理论。我们可以在第一章里对人们解释生命的意义何在。这样
可以吸引住他们。一旦他们被吸引住,并且付钱买了书,剩下的章节里我们就可以胡扯了。

大卫:哦,是的。这倒像个计划。有人对我说,人类自从诞生起就一直有两个悬而未决的问
题。第一个是:“生命的意义何在?”第二个是:“在一天结束时,我攒下的所有零花钱能
干些什么?”

李纳斯:我有对第一个问题的回答。
大卫:答案是什么?
李纳斯:这个答案基本上简单而漂亮。它不会给你的生活以任何意义,但可以告诉你将发生

什么。有三件事具有生命的意义。它们是你生活当中所有事情的动机,包括你所做的任何
事情和一个生命体该做的所有事情。第一是生存,第二是社会秩序,第三是娱乐。生活
中所有的事情都是按这个顺序发展的。娱乐之后便一无所的。因此从某种意义上说,这意味
着生活的意义就是要达到第三个阶段。你一旦达到了第三个阶段,就算成功了。但首先要越
过前两个阶段。

大卫:你需要详细解释一下。
帕特里夏:爸爸,我们能不能停车买个巧克力冰淇淋?我现在想吃冰淇淋。
塔芙:小宝贝,不行。你得等一等,等我们停下来去上厕所时你才可以吃冰淇淋。
李纳斯:我给你举几个例子来说明这一观点。最明显的是性,它开始只是一种延续生命的手
3
Just For Fun by Linus Torvalds

段,后来变成了一种社会性的行为,比如你要结婚才能得到性。再后来,它成了一种娱乐。
帕特里夏:这么说我得上厕所了?
大卫:性为什么是娱乐?
李纳斯:好吧,我是在对牛弹琴。我举一个别的例子。
大卫:不必,还是说说性。
李纳斯:它是在另一个层次上的……
大卫(自言自语):哦,参与就是娱乐,而不是在一旁观看。好,我明白了。
李纳斯:……假如你从生物学的角度观察性行为,就是在另一个层次上。性一开始是怎么来

的?是生存。最初它不是娱乐,后来两者融合在一起了。好,我们先把性放下。
大卫:别,我想这可以写整整一个章节。
李纳斯:我们还是来谈谈战争吧。很明显,它最初起源于生存,因为在你和水源之间有一个

高个子家伙挡道。再后来,你必须和那个家伙为争夺一个妻子而搏斗。之后,就成了一种社
会秩序。中世纪之前很长一段时间里战争就是这个样子。
大卫:战争是建立社会秩序的手段。
李纳斯:没错。但它也是把人自己塑造成社会秩序中一部分的手段
大卫:如今战争已成为娱乐?
李纳斯:对。

大卫:也许那些在电视上观看战争节目的人,会觉得战争非常有意思。
李纳斯:电脑游戏。战争游戏。有线电视新闻网。战争的原因也常常很有意思。对战争的看法
也是娱乐。对性的需求其原因也常常是娱乐。当然,生存的功能没有泯灭,尤其是当你是一
个天主教徒的时候,对不对?但即使你是一个天主教徒,有时你想到性的时候也包含享乐
的需要。所以这并非只是纯粹的娱乐。在所有的事物中,一部分动机可能是生存,另一部分
可能是社会秩序,剩下的就是娱乐。好,我说说技术。技术最初也是生存。生存的意思并非只
是生存而已,而是为了生存得更好。为了从井里打水人类才发明了风车……

大卫:火的发明也是这样。
李纳斯:对。这仍是为了生存,还没有达到社会秩序和娱乐的阶段。

4


Just For Fun by Linus Torvalds

大卫:技术是怎样进入社会秩序阶段的?

李纳斯:其实工业化的目的主要是生存需要,或者为了生存得更好。比如生产汽车,它便意
味着制造出更快更漂亮的汽车。然后技术便达到了社会层面的阶段。这时我们有了电话。在某
种程度上,也有了电视。早期许多电视节目主要是为了给大众洗脑。电台也是如此,许多国
家常常投资电台,为的就是社会秩序的原因。

大卫:建立和维持社会秩序……

李纳斯:没错,然后又超越了那个阶段。今天,电视显然主要是为了娱乐。如今你才可以到
处看到手机,手机现在大体上还处于社会的层面,但也正在朝娱乐的阶段发展。

大卫:那么技术的未来将会怎样?我们已经超越了生存阶段,现在处于社会阶段,是这样
吗?

李纳斯:对。过去所有技术都是为了使生活更容易一些。是为了快点达到一个地点,货品更
便宜一些,住进更好的房子等等。那么信息技术与过去的技术有何区别呢?人人都建立起联
系后又会怎样呢,还有什么可做的?当然人们之间的联系可以建立得很好,但从根本上说
与过去没什么区别。因此技术将把我们引向何处?依我看,下一个巨大的步伐就是迈向娱乐。

大卫:你的意思是,一切的一切最终都将演变成娱乐……

李纳斯:这就是为什么Linux在某种程度上如此成功的原因。想一下那三个动机。第一个是
生存,拥有计算机的人把这个视为理所当然。坦白地说,假如你有一台电脑,就意味着你已
经不会再为基本的生计问题发愁了。第二个是社会秩序,建立社会秩序的动机显然是为了使
各种各样的人能够各安其位。

大卫:你在 Comdex电脑业会议上说的话非常不错,当时你说
Linux的开发是一个全球性
团队的体育项目。这一点基本上是由你创立的,伙计。

李纳斯:Linux表明了人们为什么喜欢团队体育项目,尤其是想成为团队中的一员。

大卫:是的,每天坐在电脑前,你大概希望觉得你是一个大团体中的一分子,任何事情中
的一分子。

李纳斯:这就是社会层面,和其他团队体育项目一样。想象一下一支足球队里面的人,特别
是高中的足球队。Linux的社会层面是非常非常重要的。但
Linux也是娱乐,这种娱乐是金
钱很难买到的。当你处在生存阶段时,金钱是一个非常强大的动机,因为用金钱换取生存是
件容易的事情。换取生存之类的东西是很容易的,但突然之间你进入了娱乐阶段,金钱就…


大卫:金钱就没用了?

李纳斯:不是,并不是没用,因为显然你可以用钱买电影影碟、速度更快的汽车、更豪华的

5


Just For Fun by Linus Torvalds

假期。还有许多东西你也可以买,从而改善你的处境。

塔芙:李纳斯,我们该给丹妮亚拉换尿布了。帕特里夏也得去上厕所。我想喝一杯卡普契诺
咖啡。我们在这儿能找到一家星巴克(Starbucks)咖啡馆吗?我们现在在哪儿?

大卫(抬起头):根据空中的味道,我想我们已经快到国王城了。

李纳斯:我们所说的都非常宏观,但我们指的不光是人,而且是生活。和熵的定律相似。根
据“生活的熵定律
”,一切事物都将从生存走向娱乐,但这并不意味着在某个局部地区
没有倒退的现象,而且毫无疑问许多地方都有这种情况。有时事物往往会分裂开来。

大卫:但作为一个体系,一切事物都朝着一个方向发展……

李纳斯:一切事物都朝着一个方向发展,但并不是同步的。所以从根本上说,性已经达到了
娱乐阶段,战争已经快接近娱乐阶段了,技术也已经达到了这一阶段。新生的事物开始是为
了生存,比如太空旅行,它在某个阶段是为了生存,然后成为一种社会秩序,最后达到娱
乐的目的。可以用膜拜的角度看一下文明。我是说,文明也是以同样的格局出现的。文明最早
是为了生存,比如大家聚在一起就会生存得更好,于是建立起了社会结构。最后,文明的存
在是为了纯粹的娱乐,当然也并非完全纯粹,而且这种娱乐也并非有什么不好。古希腊人是
以强大的社会秩序而著称的,他们也有不少娱乐。人人都知道那个时代产生了不少一流的哲
学家。

大卫:那么这些和生活的意义有什么联系呢?

李纳斯:并非有何联系……只是说……存在着这类问题。

大卫:这其间的小小联系你还得想一想。

帕特里夏:妈妈,瞧那些牛。

李纳斯:所以,要是你知道生活的走向是这样的,那么毫无疑问,你的生活目标就中促成
这一走向。而且这种走向并非是一个单一的行程。你做的一切都是许多走向中的一部分。你也
可以问自己:“我做些什么才能使社会变得更好?”你知道你是这个社会的一部分。你知道
社会正在朝这个方向发展,你也能帮助它朝这个方向走。

塔芙(扬起鼻子):什么味?真难闻。

李纳斯:所以归根结底,我们都是为了开心。我们也可以坐在这里,完全放松,享受着汽车
旅行。

大卫:仅仅为了开心?

Just for Fun

6


Just For Fun by Linus Torvalds

    第一章一个书呆子的诞生

1、大鼻子的孩子

我是一个长相丑陋的孩子。

我能说什么呢?要是好莱坞有一天想拍一部关于 Linux的电影的话,我希望他们一定得找
一个像汤姆?克鲁斯那样的人担当主角,但在现实中,我的相貌可没有那么好。

千万别误解我的话,我还没丑到《巴黎圣母院》里那个驼子的地步。

但可以想象一个我的大包牙,凡是见过我小时候照片的人,都会觉得我的相貌酷似河狸。再
想象一下我不修边幅的衣着,以及一个托沃兹家族祖祖辈辈遗传下来的大鼻子,这样,在
你脑海中我的模样就形成了。

有时别人对我说,我的鼻子长得简直“富丽堂皇”。人们还说----至少我的家人是这么对我
说的----一个男人的鼻子的大小可以说明“其他”东西。但是对一个十来岁的孩子来说,这
些话大概也没什么意义。在他看来,鼻子只不过是起着遮盖牙齿的作用。照片上我们家三代
男人的脸部轮廓让人痛苦地联想到,留在别人记忆里的唯有鼻子而没有什么其他的男人气
质。至少在当时是如此。

为了让你对我模样的想象更完整一些,现在再来补充一些细节。棕色头发(在美国这里,人
们把它称做金黄色,但在斯堪的纳维亚就叫做“棕色”)、蓝眼睛、稍有点近视,于是戴副无
伤大雅的眼镜。另外眼镜至少可以让人不大注意我的鼻子,于是我就带上了,任何时候都不
摘下来。

哦,我已经提到了我在穿着方面的缺乏品味。通常,我都是选深蓝色的衣服,这就意味着我
只穿蓝色牛仔裤,再配一件蓝色翻领毛衣----也可能是青绿色之类。幸好我们家人不喜欢照
相,这样让我出丑的证据就没有留下多少。

照片还是有几张。有一张里的我当时只有十三岁左右,和比我小十六个月的妹妹萨拉一起照
的。照片里的她看上去还蛮不错,而我却瘦得出奇,是个脸色苍白、扭曲着身子让人拍照的
小男孩。拍照人大概是我妈妈。她是芬兰新闻社的翻译,这张宝贝照片也许是她在出门上班
前匆匆忙忙拍下来的。

我在 12月
28日这个一年末尾的时候出生,这便意味着我是全班里年龄最小的孩子,同时

7


Just For Fun by Linus Torvalds

也是个头最矮的一个。如果是在高年级,比多数同学都小半年似乎已不再是什么问题,但在
刚上学的那几年这点差别却至关重要。

你有什么想法?你是不是想说,令人惊奇的是,所有这些缺点对我都没有什么太大的影响?
长得像海狸、小矮个、戴副眼镜、乱糟糟的头发(其实后来我的头发也总是蓬乱不堪),不修边
幅的衣着,这些都没什么影响。因为我有迷人的个性?

但我告诉你,事实并不是这个样子。

还是让我们实话实说吧,我是一个古怪的书呆子,一个为人取笑的对象。从很早的时候起就
是如此。我倒没有干什么用胶带把眼镜粘在一起的事,但也差不多了。因为我有着其他合乎
大家想象中的书呆子的所有特点:比如数学极好,物理也非常棒社交能力却差得一塌糊涂
等等。那时,做一个书呆子还没有被人认为是一件好事。

每一个人大概在上学时都遇到过像我这样的人:在数学方面很突出,但不是因为学习刻苦,
而是天生就是那个样子。我在我们班就是这样一个人。

在你急着替我难受之前,我再给你补充一些细节吧。我可能的确很怪,而且是个小矮个,但
我混得不错。我在体育方面虽说不上能达到运动员的水平,但也不是不可救药的家伙。学校
课间休息时总是玩一种游戏,这种游戏比赛技巧和速度,比赛分两个队进行,两队轮流用
球扔向对方,被扔中者出局,直到有一方全部出局认输为止。我虽说从来也不是顶尖好手,
但在两队挑选队员时我总是属于最早被挑中的那一拨。

所以在包括家庭、邻里在内的社会这一层面,我可能比较古怪,但单以学校而论混得还行。
我没花什么力气就成了在学校里属于有点档次的那类学生,尽管从来也不属于出类拔萃的
那种,可能主要是因为我不那么玩命。其实我即使在社会层面也有别人可以接受的地方。好
象谁也不会太关注我的鼻子,现在回想起来,可能因为他们都有太多自己要操心的事情。

回过头来看,当时的大多数孩子似乎在穿衣服方面也不太讲究,而当我们长大后,又突然
要由别的什么人来决定我们穿什么衣服了。就我自己而言,这些人主要是某些高技术公司的
销售人员,我就穿他们在会议上免费发送的T恤和夹克。最近,我几乎一直都穿
Vendorware
公司的这类货色。而且我还有一个老婆,由她决定我的衣橱里应该放些什么样的衣服,还替
我挑选凉鞋、袜子。于是我更用不着为此事操心了。

2、外公的计算机

如果说我孩提时代一些最幸福的记忆是玩我外公的一台老式电子计算器,对此大概谁也不
会感到惊奇。

我外公列奥?瓦尔德马?托尔奎斯特(Leo Waldemar Tornqvist)是赫尔辛基大学的一位统计学教
授。我记得我曾开心地在他那台计算器上计算过大量随机数字的正弦值。并不是因为我对答


8


Just For Fun by Linus Torvalds

案感兴趣
(毕竟,对这样的问题没有多少人感兴趣
),我开心是因为这发生在很早以前,那
时的计算器可不像现在的那样能够很快的一下就给出答案,它们还得有个计算过程。一边计
算一边闪烁个不停,好像在对你说:“瞧,我还活着,这次计算我只用 10秒钟就能完成,
同时我还能对你眨眼睛,告诉你我已经完成了多少工作。”

这一点非常有意思。比现在的计算器令人兴奋多了,因为现在的玩意儿在计算简单问题时全
然不费力气。而当早期的计算器计算时,你知道它们正在辛苦地工作。并且,这一点可以一
目了然地看出来。

我已经记不清我第一次见到真正的计算机(computer)是什么时候了,但肯定是在十一岁左右。
那大概是在1981年,当时我外公抱回来一台崭新的CommodoreVIC-20计算机。由于我曾在
那台老计算器上玩过好长一段时间,所以见到新的计算机时肯定特别兴奋,并且迫不及待
地想试一试。然而我已经记不起当时真切的情形了。

说实在的,我甚至连我是怎么开始玩起计算机的都记不清了。刚开始还比较有节制,后来简
直就被它迷住了。

VIC-20是最早的家用计算机之一。它不需要自己组装。你只须把它和电视连接上,打开,它
便开始工作了,电视屏幕的上方会显示出大写字母“已准备好”的字样,然后是一个一闪
一闪的光标,在等着你开始操作。

最大的问题是,当时在个人计算机上你没什么可做的事情。尤其是在早期,开发商业程序的
条件在当时并不具备,你能做的唯一的事情就是在它上面用 BASIC语言编程序。我外公当
时就是这么干的。

我外公把这个新家伙仅仅看作是个玩具而已,同时也是一台升级的计算器。它不仅在求正弦
值等方面比老式的电子计算器快得多,而且你还可以让它自动地反复执行同一条指令。这样,
我外公可以用它在家里完成一些过去只能在大学的大型机上完成的事情。

他也希望让我分离他的快乐,并试图让我对数学感兴趣。

于是我就坐在他的膝盖上,替他输入他事先仔细地写在一张纸上的程序,因为我外公很不
习惯直接在键盘上敲打。我不知道有多少不到十岁的孩子会坐在他们祖父的房间里,学习怎
样简化数学公式,然后把他们正确地敲进计算机里去,但是我记得我自己是这样干的。我已
忘记了这些算式是干什么用的,而且我想我在计算时也没有找到简单的办法,但是我还是
在那里给他帮忙。也许我是在帮倒忙,也许有我比没我更费时间,但只有天知道是不是如此。
最终我把键盘玩得很顺,而这是我外公一直都做不到的。我一般是在放学后玩电脑,或是我
妈妈送我到外公家过假日时。

而后我又开始阅读电脑操作手册,并尝试将里面的示范程序(example program)输入进去,
手册里有一些简单游戏的示范程序,你可以尝试着自己编进去。如果你没有出错,屏幕上就
会出现一个人横穿走过的图像,画面比较差。而且你还可以稍作修改,让人形图像穿过屏幕
时,出现各种不同的背景颜色。只要你做,你就可以做到。

9


Just For Fun by Linus Torvalds

这种感觉棒极了。

然后,我开始自己写程序。

但是,我编写的第一个程序与其他人编写的第一个程序没什么不同。

10 PRINT “HELLO”
20 GOTO 10

它将严格按照你所期待的那样去做。屏幕上显示出一行又一行的“HELLO”,并且无休无止,
除非你因为厌烦而中止它。

然而这仅仅是在计算机上的第一步,也是许多人的最后一步。在这些人眼里,这样的程序非
常愚蠢,因为你为什么要把“
HELLO”显示上一百万次呢?但这个程序也是许多早期家用
计算机的用户操作手册里面必然会有的第一个示范程序。

但让人惊奇的是,你可以改变程序的内容。我妹妹萨拉让我对这个程序作了修改,从而产生
了这个程序的第二个版本,屏幕上显示的不再是“
HELLO”的字样,而是无休无止的
“SARA
IS THE BEST”(萨拉是最棒的)这行字。其实在平时,我并非是一个拥有如此爱心的哥哥。很
显然这种显示方式(满屏滚动的一行行字)给她留下了深刻的印象。

然而此事我却记不真切了。因为每当我写完一个程序后就会把它忘记,然后再去编写下一个。

3、芬兰的严冬

让我给你们描述一下芬兰吧。在十月的某段时间,天空一直笼罩着令人难受的雨雪天气前的
那种灰黑色,你每天起床时面临的都是这种预料中的黑暗天空。然后,寒冷的雨水将夏日的
一切痕迹都冲洗得干干净净。降雪似乎可以创造奇迹,它给大地万物罩上一层非常明亮的外
衣,洗刷掉漫天阴霾,给人们带来振奋和乐观。然而问题是,这乐观情绪短暂得只能维持几
天,因为接下来的是透骨的寒冷,即使是严寒过去之后,积雪在几个月之内都不会融化。

到了一月份,要是你想出去的话,你将只能在一种影影绰绰的昏沉中徜徉。这是一个雾气、
穿着厚重的衣服和总在冰球场上滑倒的季节----他们把你往日抄近路去车站的小学操场泼
上水变成了冰球场。在赫尔辛基的街道上,你必须时不时躲开走路蹒跚的老太太----她们在
九月份的时候大概还是某人慈祥的祖母,但在一月份某个星期二上午的十一点钟,她们便
由于在早餐时喝多了伏特加酒而在人行道上歪歪扭扭地踉跄着。

可谁又能责怪她们呢?再过几个小时天色又将黑下来,人们便无事可做了。然而我却有一个
可以让我度过寒冬的室内运动:编写程序。

10


Just For Fun by Linus Torvalds

这样的时候我外公多半在我身边,他也不在乎他不在时我呆在他的房间里。我向他讨钱买来
了第一本电脑书。但所的文字都是英文,我还必须翻译书中的语言,而要理解用一个你不太
熟悉的语言所表达的技术术语并非易事。我也用我的零花钱购买电脑杂志,其中有一本写着
关于莫尔斯电码(Morse Code)的程序。而这个特殊程序的特别之处在于,它并非用BASIC语
言写成,而是由一组数字写成,这些数字可以用手工方式将其转变为计算机可以读懂的许

0和1。

这样,我便发现了电子计算机并非真的讲
BASIC语言,它所赖以操作的是一种更加简单的
语言。赫尔辛基的孩子们都和他们的父母在树林子里玩曲棍球和滑雪,而我却在琢磨一台电
脑在怎样工作。当时有一些程序,能把人们可读和数码转换成电脑看得懂的0和1,但我并
不晓得有这样的程序,于是我就开始用数字形式编写程序,然后再用手工进行转换。这就是
用机器语言编程序,这样做时,我便开始做起了我过去以为是完全不可能的事情。我已经能
够驱使电脑做事情,对一切细节我都能够加以控制。我开始思索,如何能在更小的空间里让
事情做得更快一些。由于在我和电脑之间没有抽象的屏障,我很快地就能接受目标,这便是
和一台机器变得亲密的感受。

就这样,十二岁、十三岁、十四岁过去了。其他孩子在外面踢足球的时候,我却觉得外公的电
脑更加有意思。他的机器本身就是一个由统治的世界。我们班里大概有三个人拥有电脑,但
只有一个人总以一成不变的原因使用它。我每个礼拜开一次会,这是在我的日历上唯一的社
交活动,偶尔和电脑一同熬夜时除外。我并不在乎,因为特好玩。

后来我父母离婚了,爸爸搬到赫尔辛基的另一个地方。他觉得他的孩子应该拥有更多的兴趣,
于是他替我报名打他最喜欢的篮球。这实在是个灾难,我是全队中个子最矮的队中。打了一
个多赛季之后,我便用所有最难听的语言告诉父亲说自己不打了。我对父亲说,篮球是他的
体育项目,不是我的。我的同父异母兄弟列奥更有体育才华。后来他和芬兰 86%的人口一样,
最终成了一名信义会教友。我爸爸是个顽强的不可知论者,但他那时才开始怀疑他是一个失
败的父亲。等到萨拉也加入了天主教教会时,他便彻底意识到了自己是个失败者。

外公性格不太开朗。他有点谢顶,体重过人,性格内向,完全是个心不在焉的教授。你可以
想象一个数学家,在想事时两眼直勾勾地盯着前方,一句话也不说。你根本想象不出他在想
什么。是复杂理论分析?抑或家里的某个人?我也一样以发呆著称。我一旦坐在电脑跟前,
只要有人干扰我,我就会变得非常生气和烦躁不安。这一点我后面还会详加叙述。

我对外公最生动的记忆并不是他的电脑,而是他那座红色的小村舍。在赫尔辛基,人们普遍
都拥有一座小小的夏季别墅,可能是一间长宽各三十英尺的房子。这样的小房子建在一小块
土地上,面积可能是
150*150平方英尺,人们到那里去拾掇他们的花园。这些人往往在城市
拥有一栋公寓,在郊外则还有这样一个小地方种些土豆、几棵苹果树或一些玫瑰。到那里去
的往往都是年长的人,因为年轻人的工作都很忙。这些人种点什么,相互之间还要比试,让
人觉得很滑稽。外公正是在这个地方给我种了一棵苹果树的幼苗。它现在或许还在那里,除
非它长得过于茂盛,以至于一个嫉妒人很强的邻居在短暂的夏季黑夜偷偷溜进我外祖父的
地盘,把它砍掉了。

我外祖父在把电脑介绍给我的四年后,得了脑血栓并且半身不遂。每个人对此都感到很吃惊。

11


Just For Fun by Linus Torvalds

他在医院里躺了一年。虽然他是我最亲的人,但在当时对我的影响并不太大,或许是我还太
年轻而不那么敏感的缘故。他的样子和从前已经判若两人,我并不想去看他。只是大约每隔
两个星期看他一次。倒是妈妈去得很频繁。妹妹很早的时候就担当起了家庭社会工作者的角
色,所以去得更频繁。

外公死后,他的电脑就成了我的生活伴侣。关于这一点没有什么更多可说的。

4、我的家族

我们再回头看看历史。

第一个将脚印踏在芬兰雪地上的最重要的瑞典人是亨利主教,他被天主教会于 1155年派往
芬兰。那些传教士占据着芬兰所有的城堡以抵抗俄国人,并最终战胜了我们东国的帝国,赢
得了这场争夺芬兰控制权的斗争。在后来的几个世纪里,为了促进芬兰殖民地人口的增长,
瑞典政府给予在芬兰的瑞典人以土地和减税等激励。瑞典人的统治一直延续到 1714年,接
着是芬兰被俄国人接管七年的短暂插曲。之后瑞典人再次将它夺了回来,直到 1809年俄国
和拿破仑对芬兰发起进攻,芬兰又落入俄国的统治中,一直到 1917年十月革命爆发为止。
早期瑞典移民的后裔如今在芬兰达到35万人,他们都讲瑞典语,占总人口的7%。

这其中也包括我的怪癖的家庭。

我外祖父的父亲住在瓦萨城附近的一个叫杰波的小镇上,是个相当贫困的农场言,但他的
六个儿子中有五个获得了博士学位。这很难说明在芬兰通过努力以改善自己境遇的可能性。
不错,冬天的黑暗以及走进屋里后就把鞋子脱掉的做法的确让你心烦。然而在那里你可以免
费受到大学教育。这一点和美国的情况大相径庭,美国的许多孩子在成长过程中都有一种毫
无前途的感觉。事实上,上面提到的六个儿子之一后来当上了芬兰中央银行的行长。还有一
个就是我外祖父列奥,也就是带我接触到计算机的那一位。

再来说说我的祖父。是他创造出了Torvalds这个姓。这姓来自他原来的名字
Ole Torvald
Elis中间那个词,在瑞典语里的意思是“托尔的领地”(托尔是北欧神话中的雷神----译注)。
这是因为我祖父生下来就没有父亲,他的姓
Elis是我曾祖母最终嫁的那个人的姓。我祖父非
常不喜欢那个人,所以在1937年他21岁生日的时候给自己改了姓。他去掉了自己的姓,又
在原来的中名Torvald后面加了一个“S”作为新的姓,据他说这样发音会显得更为丰满。但
他实在应该重新改个姓,因为他加上的那个 “S”把原来的意思全破坏了,并让讲瑞典语和
芬兰语的人都感到百思不解,他们根本就不知道该怎么把它念出来。而且,他们都认为这个
字应该拼成“Thorwalds”,而不是现在这个样子。全世界现在总共有十八个姓
Torvalds的人,
他们之间都有血缘关系。我们都得忍受我祖父带来的这种混乱。这大概就是我在网上总使用
“李纳斯”的原因。Torvalds太容易引起混乱。

我这个祖父并不在大学教书,他是个记者和诗人。他第一份工作是在离赫尔辛基以西大约一
百公里的一座小镇上当一家报纸的主编,因为在上班时常喝酒而被免职。他和我奶奶的婚姻


12


Just For Fun by Linus Torvalds

也因此破裂了。后来他搬到了位于芬兰西南部的城市土尔库,又结了婚,成为当地一家报纸
的主编,出版了几本诗集,但酗酒的问题始终没有解决。我们常常在圣诞节和复活节时去土
尔库看他,同时也经常去看望我奶奶。我祖父在五年前去世。我可从来没有读过他的任何诗
集。这只是件我爸爸遇见生人时的谈资罢了。

我们家的记者一抓一大把。据说在 1917年芬兰摆脱了俄国统治而独立之后所发生的内战中,
我曾祖父的一个兄弟就是一名站在白党一边而曾被红军抓获的记者。我父亲叫尼尔斯(大家
都管他叫尼基,是电视和广播记者。自从六十年代的大学时代起,他就在共产党内非常活跃。
他的政治倾向来自于他得知了许多发生在芬兰的针对共产党的同情者和支持者的无耻暴行。
1967年,他认识了我妈妈安娜,当时他们俩都是具有反抗精神的大学生。据我爸爸说,他
当时是一个讲瑞典语的学生俱乐部主席。有一次该俱乐部出外郊游,我爸爸在追求我妈妈的
过程中有个情敌,当他们准备坐汽车返回赫尔辛基时,我爸爸让他的情敌负责往汽车上装
行李。于是他便利用这一机会占据了我妈妈旁边的座位,劝说她单独跟他约会。

我是在大学校园的游行示威中诞生的。我们家的爱巢修筑在我祖父公寓的一个房间里。我的
第一个摇篮是一个洗衣用的筐子。幸好那个时期没有给我留下什么记忆。

大约在我三个月的时候,我爸爸报名去服兵役,因而没有被当作坚定的反政府分子被投入
监狱。在军队中他成为优秀的士兵,而且是个神枪手,因此常常受到奖励,享受周末回家探
亲的特权。据我们家人说,我妹妹萨拉就是在他一次探家时受的孕。我妈妈除了照料她两个
金发的孩子之外,还在芬兰新闻社当译员。即使到了今天,她还是在各种新闻媒体中寻找消
息,然后把它们翻译成瑞典语。她也从事制图的工作。

然而我却奇迹般地逃出了这个以记者为主的小小王国。相反,我妹妹萨拉除了有自己的新闻
翻译社,也在新闻社供职。而我同你异母兄弟列奥?托沃兹则是个摄影师,而且想当导演。因
为我的家人大抵都是记者出身,所以我有资格和记者们开玩笑,说我知道他们是一帮无赖。
我知道我这样说自己也显得很差劲,但多年来,我们家曾经来过不少做客的记者,都是些
为了能挖掘出消息什么事都做得出来或是靠凭空想象编新闻的家伙,而且不少记者似乎还
总是离不开杯中物,并且常常喝得酩酊大醉。

每当这个时候,我就躲进自己的卧室里。说不定我妈妈的神经比较坚强,能对付他们。我们
家坐落在赫尔辛基市中心的一个叫罗德伯根的小区,公寓在位于罗伯兹盖坦街上黄色的不
起眼的大楼中。我们家在五层,有两间卧室。萨拉和那个讨厌的、大她十六个月的哥哥(也就
是我)同住一间卧室。附近有一个小公园,其名字是根据当地一个酿酒厂老板的名字起的。我
总觉得这样很奇怪,但一想到有的篮球场馆也是根据一个生产办公设备的人的名字而命名
的,也就不足为怪了。 (有一次我们在公园里看到一只猫,于是我们家人从此便称那座公园
为“猫园”)。公园里有一个不大的空房,许多鸽子常常飞到那里。公园建在一座小丘上,所
以到了冬天是个滑雪的去处。另一个可以玩耍的地方是我们楼后面的水泥院子,此外楼顶上
也可以玩。每当我们玩捉迷藏时,顺着梯子爬五层登到楼顶上特别有意思。

但再有意思也不如玩计算机过瘾。只要屋里摆着电脑,晚上不睡觉都没关系。每个男孩子晚
上都睡得很晚,以便躲在被窝里“阅读”《花花公子》。但我却不是这样,而是佯装睡着,等
我妈妈走了以后便跳将起来,一屁股坐在电脑跟前。那个时候可还没有网上聊天这回事呢。
“李纳斯,该吃饭了!”有时妈妈这么叫我时我不愿意出去,于是妈妈就对她的一些记者朋


13


Just For Fun by Linus Torvalds

友们说,我是个非常好养的孩子,以至她只要把我放在一个黑咕隆咚的储藏柜里,再配上
一台电脑,偶尔朝里扔一些意大利面条,我就会感到格外高兴了。她的话不无道理。谁也不
会担心这个孩子出外时遭到绑架(你听说过这样的事吗?)。个人计算机在变得像今天这样复
杂之前,尤其是在像我这样呆头呆脑的青少年还可以打开电脑的盖子自己动手修理的时候,
其实对孩子们很有好处。今天的电脑所面临的问题和汽车一样:它们变得越来越复杂,于是
人们很难将他们拆开再自己组装在一起,所以也就很难弄清那里面究竟是回事。过去人们可
以简单地换掉汽车上的桐油过滤器,但你最后一次修车肯定要比那个活儿复杂得多吧?

今天的孩子们不再自己拆卸组装电脑,而是将所有的时间都用于玩游戏上,于是智力得不
到发展。我并不是说游戏有什么不好,我最早编写的一些程序就是游戏。

我编的程序中有一个是你必须在一个海底洞穴里控制一艘小小的潜水艇。这是一个十分标准
的游戏概念。整个世界都倾斜着移动,作为玩游戏的人,你就是潜水艇本身,所以你必须不
能让自己碰到墙壁和可怕的大鱼身上。其实真正移动的仅仅是这个游戏空间,鱼是这个游戏
空间的一部分,是和它一起移动的。你玩的时间越长,它们移动得就越快,同时洞穴还变得
越来越小。你不可能在这个游戏中获胜。游戏的宗旨也并非是为了获胜,这种游戏玩上一个
来星期,然后再转移到另一个游戏,非常有意思。这主要是为了编程,才创造出新的游戏。

我还有其他的玩具,如模型飞机、轮船、汽车和铁路。有一段时期,我爸爸常买回一些非常昂
贵的德国模型火车。他解释说,他小时候从来没有玩过模型火车,所以模型火车可以成为父
子的共同爱好。虽然很好玩,但是和电脑的挑战相比却相差甚远。有时我被剥夺玩电脑的权
利并非是因为我在电脑上花费了太多的时间,而是因为别的事而受到惩罚,比如与萨拉打
架。在整个小学和高中时期,我们展开了激烈的竞争,特别是在学习上。

所有这些竞争都取得了良好的效果。要不是我经常取笑她,她就不会为了胜过我而在期末写
了六篇文章,可当时在芬兰,要想从中学毕业写五篇作文就算达到标准了。另一方面,我的
英文还十分蹩脚,这一点应该感谢萨拉。她总是拿我的英文取笑,有很长时间我一直讲一口
典型的芬兰式英语。所以后来我的英语才有所改进。我妈妈也经常揶揄我,但主要是因为我
对女学生不感兴趣,而这些女生都希望得到“数学天才”的辅导。

有时我们和爸爸还有他的女朋友住在一起,有时萨拉和爸爸住在一起,而我和妈妈住在一
起。还有的时候我们都和妈妈住在一起。顺便说一句,瑞典语中找不到一个与“机能障碍家
庭”相对应的词汇。由于我父母的离婚,我们手头很拮据。当时我记得最清楚的是,我妈妈
不得不经常典押她唯一的投资----无度电话公司的股票。在芬兰,只要你拥有一部电话就能
拥有一张该公司的股票。我妈妈的股票大约值五百美元,每当我们手头特别缺钱花时,她就
只好拿着股票到当铺去。我记得曾和妈妈去典押过一次,心里感到非常窘迫(如今我是这家
公司的董事会成员。事实上,赫尔辛基电话公司是我任董事会成员的唯一一家公司)。类似的
心理感受也发生在我要为购买第一块手表而向外公讨钱的时候,当时我自己已攒下了大部
分的钱,但剩下的钱妈妈却拿不出来,于是让我向外公讨要,这让我感到非常难堪。

有一段时间,我妈妈上夜班,萨拉和我便只好自己想办法吃晚饭。我们应该到街角的一家小
铺子里用赊账的办法买仪器,但我们买的却是糖果,而且晚上可以玩电脑玩到很晚,这让
我感到痛快极了。要是别的男孩家里没有家长看着,早就堂而皇之地“阅读”《花花公子》了。

14


Just For Fun by Linus Torvalds

外祖父死后,我外婆的身体似乎也每况愈下,她患了一种她自己称之为 “晕眩症
”的病,
在医院里一住就是十年。在她进了医院后两年,我们便搬到了她的公寓。那是一幢坐落在彼
德盖坦街上结实的俄国时期的老建筑物,与赫尔辛基滨水区的一个漂亮公园相距不远。我们
住在一层,公寓里有三间卧室,一间小厨房。萨拉住最大的一间卧室。而我这个消瘦的少年
住的是最小的主卧室,反正我只要有一个黑咕隆咚的地方就行了,时不时能得到意大利面
条就会感到心满意足。我在窗户上挂上了厚厚的黑色窗帘,不让阳光射进来。电脑就摆在靠
窗户的一张小桌子上,离我的床大约只有两英尺远。

1999年春天,当《圣何塞信使新闻报》的星期日增刊让我采访李纳斯?托沃兹时,我对他只有一些模糊的了
解。在这年春天的早些时候,随着一系列的公司和网景公司一样采用了公开源代码的概念或者干脆采用了
Linux操作系统本身,李纳斯(Linus)一时间成了一个众人皆知的名字。尽管我对于这方面的发展并不十分了
解,但在九十年代初期,我在一本涉及到UNIX操作系统和公开源代码问题的杂志担任编辑,所以我脑子
里还残留着一些相当的记忆:包括李纳斯是个芬兰的大学生,他在自己的宿舍里编写了一个影响极大的
UNIX系统,并且免费在互联网上散发,等等。这些信息并非十分准确。给我打电话的编辑说,在最近于圣
何塞举办的 Linux展览上,李纳斯已经成为众星捧月的核心人物,所以他敦促我一定要完成这项任务:“
我现在手头有一个闻名全球的超级明星,就在这里,噢,不,在圣克拉拉。”接着他便把一些报纸简报传
真给了我。

李纳斯已经在两年前来到了硅谷,正在为当时还显得特别神秘的 Transmeta公司工作,那家公司多年来一
直致力于开发一种据说成功后将轰动整个电脑工业的微处理器。但是,不知何故,Transmeta公司却允许李
纳斯继续他那项耗时甚多的工作,他仍旧是
Linux的最高领袖,对这个操作系统的任何修改拥有最终的决
定权(事实上,他的追随者已经在着手进行法律方面的工作,以期在法律上让他成为Linux商标的所有者)。
此外,他还有时间在全球四处旅游,为方兴未艾的公开源代码运动大做宣传。

然而,李纳斯却变成了一个神秘的传奇式英雄。当人人都崇拜的对手比尔?盖茨住在他豪华的华盛顿州西雅
图郊区的湖滨行宫里时,李纳斯和他的妻子以及他们蹒跚学步的女儿们却挤在圣克拉拉一栋两层楼的公寓
套房里。他似乎对一大群才气不很高的编程人员如今能享受到大笔大笔的巨大财富并不怎么在意。他的出现
使那些身在硅谷并匍匐在优先认股权之下的小人物们心里犯嘀咕:这样一个不同凡响的人怎么可能对致富
毫无兴趣呢?

李纳斯没有经纪人,也没有录音电话,而且很少回复电子邮件。我花了好几个礼拜的时间才通过电话和他
取得了联系,但一旦联系上,李纳斯便同意在他尽早方便的情况下接受一次采访。时间大约在一个月后,
也就是
1999年
5月。我出于职业上的习惯,总希望我的被采访者能处于一种放松的状态,我认为用芬兰桑
拿浴为背景是采写这篇人物传记的最好方式。于是我们租了辆福特公司的野马牌敞篷轿车,由摄影师开着,
一路到圣克鲁斯市去,那里有人为我们推荐了旧金山湾区最好的一家桑拿浴馆,坐落在一个新人类和裸身
主义者风格的度假村里。

Transmeta公司位于圣克拉拉一个匿名的写字楼群内,当李纳斯从公司出来时,手里拿着一罐拉开盖的可
乐,穿着软件程序员的典型服装:牛仔裤, T恤,一成不变的凉鞋和袜子。当我问他穿凉鞋着袜子是不是
标准的程序员工装时,他理由充分地解释说,甚至在他从未见到任何别的程序员之前他就喜欢把袜子和凉
鞋配在一起了。他说:“这肯定是关于程序员的自然法则。”

我们坐进汽车的后座,我一边鼓捣着我的录音机,一边脱口问出了第一个问题:“你家里人都是搞技术的
吗?”


15


Just For Fun by Linus Torvalds

“不是,他们基本上是新闻记者,”他答道,接着又说:“所以我知道你们都是一些坏蛋。”

他知道因为这句话我肯定不会放过他。

“噢,难道你是从一堆坏蛋是钻出来的吗?”我问。

这个世界级的程序编制员抑头大笑,不料将嘴里的一口可乐全喷在了摄影兼司机的后脖子上,李纳斯的脸
不好意思地红起来。这便是那个令人难以忘记的下午的开始。

后来的事儿更加离奇。芬兰人对洗桑拿浴可以说到了痴迷的程度,但那次却是李纳斯将近三年之内第一次
光顾桑拿。这位皮肤苍白、全身赤裸的新星戴着一副雾蒙蒙的眼镜,坐在最高一层的木板上,他的金发乱蓬
蓬地覆盖在他的脸上,浑身的汗水像小河似的滴淌下来,一直流到他开始发福的肚子上。我这样说完全是
出于好意。他的周围是一圈皮肤晒得黝黑、自我着迷的圣克鲁斯人,用他们单调乏味的新人类式的口吻夸夸
其谈着;李纳斯似乎特别热衷谈论桑拿浴的种种特点。他脸上洋溢着一抹宁静满足的笑容。

我认为,总体来讲,住在硅谷的人比其他人都更加幸福。首先,经济革命完全在他们的控制之中。更重要的
是,无论是硅谷里的新贵们还是老家伙们,都富裕得满腹流油。但谁也看不到他们脸上充满笑容,至少在
他们的经纪人办公室之外他们总是绷着脸。

绝大多数受欢迎的技术人员----甚至许多不那么受欢迎的技术人员----都有一种强烈的愿望,想让你知道
他们是多么的优秀。而且,他们都担负着一个了不得的使命,该使命比为世界和平而奋斗还要重要。李纳斯
却不然。他没有自我膨胀的感觉,与他一接触就会觉得你和他之间没有什么隔阂,这使他在硅谷那帮夸夸
其谈的精英中显得格外的可爱。李纳斯看起来似乎超越了一切,他超越了新人类,超越了高科技亿万富翁。

他不像是一只被全球的镁光灯抓住了的驯鹿,而更像一个快乐的外星人,到这个世界来告诉我们人类自私
的生活方式有多么疯狂。我还有种感觉,他是个深居简出的人。

李纳斯曾提到过,洗桑拿的一个重要部分是在蒸完后几个人坐在一起,边喝啤酒,边神侃天下大事。为此,
我们事先准备了一些富士达啤酒(Foster Beer)。我们拿出啤酒,钻进了“安静”热水池子里。我们打开富士
达啤酒罐,一边喝着一边让摄影师为他拍照。出乎意料的是,我发现李纳斯对美国商业史和世界政治都非
常熟悉。按照他的观点,假如美国人能像欧洲政治家那样在社会领域
(企业和非政府组织----译注
)和公共
领域之间采取调和政策,对美国的发展会更有好处。他一边摘下眼镜,将其浸在热水里清洗,一边解释说
他其实根本不需要戴眼镜,在少年时戴起来的原因是以为这样可以让他的鼻子看上去小一些。这时,一个
穿着衣服的女经理走到热水池旁,毫不客气地勒令我们把啤酒交给她。虽然周围环境非常开化自由,然而
啤酒却被认为是违禁品。我们唯一的选择就是冲淋浴,穿上衣服,然后找一个咖啡厅继续我们的谈话。

你在硅谷遇到的大部分人周身上下都有一种信徒般的狂热。他们对自己的生意、 “杀手应用”
(killer
application)和各自的行业过于迷恋,除此之外什么都不放在眼里。在他们的谈话中,除了自我吹嘘的话题
之外便没有别的了。然而当我们和李纳斯沐浴着阳光坐在一家自酿啤酒店里品尝着酒精度极高的浓啤酒时,
我们却无话不说。喋喋不休的李纳斯就像是只被放出笼子的金丝雀,承认他对古典摇滚和恐怖小说作家迪
恩?库恩兹(Dean Koontz)非常迷恋,他还承认自己有个弱点,特别喜欢荒唐的情景喜剧。然后便道出了许多
他的家庭琐事。

16


Just For Fun by Linus Torvalds

他不希望自己跻身于富人和有权势的人中间。我问他,如果见到比尔?盖茨想说些什么,他却说连与后者见
一面的欲望都没有。“在我们俩之间没有什么关系可言,”他说,“他所做的事是世界上最优秀的,但我
却丝毫不感兴趣。我所做的事在世界上也可能是最优秀的,他也不感兴趣。我对他经商提不出任何建议,他
对我的技术也提不出任何看法。”

我们翻越山岭返回圣克拉拉时,有一辆黑色的切诺基吉普从后面追上来,车子突然在我们旁边慢了下来,
车上的人喊了一声 “嘿,李纳斯 !”接着就掏出一台傻瓜相机,为他心目中的英雄拍照。李纳斯则坐在野马
版敞篷车的后座上,迎着风露出微笑。

一个星期后我又去了他家,当时他正在给孩子洗澡。他把他一岁的金发女儿从水池子里捞出来,想找个地
方放下,与此同时,他又把他两岁的金发女儿从水池中捞出来。他把他的小女儿递给我,后者立即大叫起
来。他妻子一直呆在另一个房间里,这时也跑出来帮忙。她个子不高,但很随和,脚腕刺了一颗植物的纹身。
不久,我们便给孩子们读起了瑞典语和英语的催眠书。后来我们便站在车库旁边,周围放着一些未打包的
行李,这对夫妇说起了在硅谷若想买一栋“拥有一个后院的真正的房子”的想法是如何不切实际。他们这
样说时并未流露出辛酸的口吻。令人惊讶的是,他们似乎并未悟出他们生活中的讽刺意味。

接下来,我们一边喝着吉尼斯黑啤酒一边在电视里观看捷伊
?雷诺(Jay Leno)的谈话节目。在这种气氛下,
开始写书便是顺理成章的事了。

5、中学时代

这四年,我基本上是坐在电脑面前度过的。

当然还有上学:诺斯高中----它是赫尔辛基五所讲瑞典语的中学之一,坐落在市中心,离
我家很近。数学和物理很有意思,所以也很好学。凡是需要死记硬背的课,我的热情都不高。
所以上历史课时,一旦你得记住黑斯廷斯战役的日期时,它就显得格外的枯燥;然而每当
讨论影响一个国家的经济因素时,它就变得有意思起来。地理课也是如此。我是说,孟加拉
有多少人口有谁在意?但仔细想来,也许许多人认为那一点非常重要。但最重要的是,只要
我学的东西很有意思,可以暂时让我忘记电脑,就会变得很轻松,比如季风,或者引起季
风的原因等。

体育课则完全是另一码事了。我要是说,在整个斯堪的纳维亚半岛,我不是最有体育天分的
人,大概是理所当然的事。信不信由你,当时我还瘦得出奇,参加体操课还说得过去,但一
旦上足球或冰球课,那便意味着逃课的时间到了。

这些课把我的分数拉了下来。芬兰的分数等级是从四分到十分。所以我的数学、物理、生物等
课大都是十分或九分,而体育课却是七分,有一次还得了个六分。我的手工课也得过一个六
分,那门课我也比较弱。其他学生都做出了精美的放餐巾的架子或凳子,作为手工课的纪念
品。而我这么多年下来,唯一的收获就是在我的大拇指里留下了几根木刺儿。说到此我必须
提一下,我岳父制作了一个精美的秋千,装在我们家的后院里,我的两个女儿在秋千上度
过了许多欢乐美好的时光。

17


Just For Fun by Linus Torvalds

我们的高中和大多数美国城市中的学校差不多,并不是为那些特别聪明和雄心勃勃的孩子
们设立的。芬兰并不希望把孩子们分成等级,或把优秀生和差等生隔离开来。然而每个学校
都有一个特有的专业,虽然它不是必修课,但你在其他学校却学不到。就我所有的中学来说,
其特殊的专业是拉丁文。在我看来,拉丁文很有意思,比芬兰语和英语有趣得多。只可惜这
个语言已经死亡。我特别想和几个好朋友聚在一起,用拉丁文开玩笑,或者用它讨论操作系
统的设计战略。

在学校附近的咖啡馆里消磨时光也特别过瘾。那里是一些学生喜欢去的地方,尤其是那些不
愿意躲在学校的楼后面抽烟的人。体育课逃课可以到那里去,或者在两节课之间有一个小时
的休息时也可以泡在里面。

自从发明了计算机之后,咖啡馆便是“呆子”们常去的场所。咖啡馆是学生们可以用赊账的
办法买东西的唯一地方。也就是说,你可以在那里买东西,他们把你买的吃的和饮料列出一
个单子,等你手头有了钱再把账还上。由于芬兰人对技术特别热衷,如今那里的赊账大概早
已用数据库来记录了。

我要的东西永远是一样的:一杯可乐和一个炸面包圈。当时我那么年轻就已经是一个健康食
品迷了。

总的来讲,我在学校里比萨拉的功课要好。萨拉更爱社交,看上去很随和,对别人特别友好。
我还得说一句,这本书就是别人雇她翻译成瑞典语的。但最后她在学习上超过了我,因为她
考的科目比我多。我的兴趣比她窄。别人都知道我只是个偏爱数学的家伙。

其实,我能把女生带回家的唯一原因就是她们希望得到我的辅导。即使这样她们来的也不多,
而且每次都不是我的主意。我爸爸总觉得那些女生感兴趣的并非仅仅是补习数学(在他看来,
她们都认同他伟人般的鼻子,好像这等于认同他是个伟人)。假如她们在寻找一个数学尖子,
她们肯定没有一个固定的男友。我的意思是,我从未弄明白他们说的“深度爱抚”是什么意
思。我曾经花了不少时间照顾邻居家一只十五磅重的猫,就是不明白这有什么了不起的。

不错,我绝对是一个呆傻之徒,这一点毫无疑问。那个时候呆傻尚有性感的含义;不过我猜
并不是真正的性感。你们所看到的是一个既呆傻又腼腆的学生,他是不是有点多余?于是我
便坐在电脑旁,感到无限的快乐。

中学毕业时,我头上戴着一顶白色毛茸茸的挂着黑穗的帽子。毕业典礼上,他们把文凭发给
我,然后我就回家。所有的亲戚都在那里等着你,到处都是香槟、花卉和蛋糕。此外,全年级
还要在当地的一家餐厅里举行庆贺聚会。这些我们都做了,而且我猜我很开心,不过具体的
细节全忘了。然而你要是问我那台68008芯片的电脑的规格,我却记得非常清楚。

6、长大成人

我上大学第一年的成绩斐然,需要拿到的学分我都拿到了。然而我仅仅在第一年收获颇丰,

18


Just For Fun by Linus Torvalds

也许是新的环境让我感到特别兴奋,或是因为突然拥有了深入学习某些学科的机会,再不
然就是读书使我感到很舒服,这总比隔三差五地进行社交活动、把酒吐在朋友们身上好得多。
第一年我表现得非常好,实在无可挑剔。然而你放心,这种表现从此再没有发生过。我的学
术生涯来了个一百八十度的大转弯。

那时还没有选择专业,最后计算机成了我的主修课,物理和数学是副修。我的问题之一是,
在整个赫尔辛基大学,除我之外,希望主修电脑的讲瑞典语的学生只有一个,他名叫拉尔
斯?韦尔泽尼斯。我们俩参加了一个为讲瑞典语的理科学生举办的组织,在那里觉得非常开
心。这个俱乐部的盛况都是由学“硬科学”的学生们组成的,比如物理和化学。顺便提一句,
成员都是男生。

我们俱乐部的房间和另一个组织共同使用,那个组织是为讲瑞典语的主修“软科学”的学
生建立的,比如生物和心理学。因此,我们有机会和女生们交往,尽管我们当中的许多人在
这方面显得笨手笨脚。不,我们所有的人都如此。我们的俱乐部和美国的大学生联谊会大体
相仿,但你不必和其他学生住在一起,也不必和对科学不感兴趣的人打交道。我们每星期三
晚上都有固定的聚会,在那里我了解到了啤酒中比尔森香型(Pilsner)和麦芽香
(Ale)之间的
区别。偶尔,我们还举行喝伏特加酒比赛。然而这些都是在我大学时代的后期发生的事情。我
在大学里有得是时间,我总共在大学里泡了八年,毕业时仅仅得了一个硕士学位(不包括去
年六月赫尔辛基大学授予我的荣誉博士学位)。

大学的第一年,我只模糊地记得乘坐有轨电车穿梭于教室和宿舍之间,我宿舍里的书和电
脑设备越堆越多。我常常躺在床上读道格拉斯?亚当斯写的科幻小说,然后就把书丢在地板
上,再抄起一本物理课本,接着又从床上滚下来,坐在电脑前为一个新游戏编写程序。厨房
就在卧室的外面,我常去那里弄点咖啡和松脆玉米饼。

也许妹妹就在附近某个地方,或者和朋友出去了,也说不定这些也就和父亲住在一起。妈妈
或许也在那里,要么她就在工作,或者说不定她和她的记者朋友们也出去了。有时一个朋友
过来找我,我们就挤在小厨房里,一杯一杯地喝茶,在电视里看比维斯和布特海德(Bevis
and Butthead)用英文唱
MTV,然后我们就琢磨着到哪儿去打台球,可又觉得外面太冷了。

真是万幸,自那以后,体育课在我的生活中完全消失了。然而“体育课”在第二年又回来了,
而且是整整一年。芬兰军队要求所有的男生一律入伍。不少男生在中学毕业后就去服兵役,
这样做比在大学上完一年后再去服兵役显得合理得多。

在芬兰你有两种选择:要么在部队服八个月的兵役,要么从事一年的社会服务工作。你要是
有很强烈的宗教原因或其他说得过去的理由,这两样你还都可以避开。对我来说却没有任何
脱身之计。对于社会,我觉得那并非是一个合适的选择。

这并不意味着我反对帮助别人。个中原因可能是我害怕社会工作会比在军队服役更加枯燥无
味。我真不敢相信我说话如此坦率。你若和已经从事过社会服务的人聊聊,就会发现如果你
事先没有排队选择好一个进行服务的较好地点,他们就会给你随便找一个枯燥乏味的地方。
如果那样,我从良心上也不可能反对。虽然逃避爱国职责我不会太有所谓,但是事实上我还
是有良心的。在万不得已时,使用枪支杀人恐怕也不会遭到我太强烈的反对。

19


Just For Fun by Linus Torvalds

要是你选择服兵役,也会有两种选择:你可以当一个普通大兵,服满要求的八个月;或者
去一所军官培训学校,当十一个月的军官。我觉得当一名军官可能会稍微有点意思,虽然你
的服兵役时间要多出十二万九千六百分钟。当军官或许也能多学到一点东西。

于是乎你们那位当时体重是一百二十磅的英雄就成了芬兰陆军预备役中的一名少尉。干的事
是火力控制。那还不是火箭科学,发给你的也不是大炮,而是坐标。你在地图上找出自己的
位置,然后用三角学求出你想要射击的方位。你做出坐标计算,然后把结果用无线电或你们
自己铺设的电话线传递出去,告诉要朝哪里射击。

我记得在参加陆军我非常紧张,因为我不知道里面的情况。有的人有哥哥或其他人跟他们讲
过陆军的情况,所以他们心里多少有点底。但却没有人告诉我将会遇到什么样的事情。诚然,
人人都知道军队里面可不是好玩的地方,凡是服过兵役的人都这么说。然而部队里到底怎么
回事我一点概念也没有,所以感到特别紧张。

在军队里最艰难的是在拉普兰森林中行军,身上必须背着似乎有几吨重的缆绳。我真觉得那
些缆绳有几吨重。进入军官学校之前,他们命令你跑步,腰上缠着一大圈缆绳,背上还得背
着两捆,一跑就是十英里。有时你就光站在那里,等待着事情发生。

或者是滑很长时间的雪,到达一个地方后再支起帐篷。那时我意识到,倘若上帝希望我们生
来就是滑雪的,他应该让我们长出长长的玻璃纤维脚蹼,而不是两只脚。对了,之并不意味
着我相信上帝。

你必须得把帐篷支起来,点起篝火,才能吃饭。你又冷又饰物,疲惫不堪,因为你已经有两
天没有睡觉了。我知道有些人花很多钱参加这种超出极限的室外冒险,把这种做法称之为“
锻炼性格的经历”。真要这样,他们参加芬兰军队就行了。

实际上,我们并不经常去室外跑马拉松,但有时的确那样做。我计算了一下,在十一个月当
中,有一百天是在树林中度过的。芬兰拥有丰富的森林资源:这个国家的百分之七十是被森
林覆盖的。我觉得这些森林我都跑遍了。

我当军官的差事是在一个五人小组中当火炮控制队长。这意味着你得懂业务,而且要让你的
业务显得比实际上更复杂。但我不是一个好领导,我觉得这种差事毫无意思,对于发布命令
我也不擅长。接受命令倒是蛮容易的,窍门是你根本不必往心里去。然而我觉得做好这件事
情并非是我生命中的使命。至少那时不是。

我说没说过拉普兰能冷到什么程度?现在想起来,当时在那里时,我真的讨厌那个地方。然
而事情就是这样,当一切都结束后,它很快就变成一段非常美好的回忆了。

在我未来的生活中,那段经历还成了我和几乎所有芬兰男人聊天的谈资。实际上,有些人说,
强制性服兵役制度的主要原因就是让芬兰男人们在喝啤酒时有话可聊,而且他们能活多久
就能聊多久。生个人都忍受了许多痛苦,那是共同的。他们都恨军队,但事后聊起来时却又
都格外开心。

20


Just For Fun by Linus Torvalds

7、爱洗桑拿的国家

既然聊到我们的国家,就让我再告诉你一些芬兰的情况。

我们拥有的驯鹿是最多的,恐怕世界上任何地方的都多不过我们。喝酒的人和跳探戈舞的人
也不在少数。只要你在芬兰呆上一个冬天,就会明白喝酒的原因。对探戈舞的着迷我却找不
出原因,但幸好舞迷们大都集中在小镇里,你永远也见不到他们。

最近的一项调查表明,芬兰的男人是全欧洲最有阳刚之气的。这肯定与他们吃驯鹿肉和将大
把的时间花在洗桑拿上有关。这个国家的桑拿浴室经汽车还要多。谁也不知道这种类似宗教
的习俗起于何时,但至少某些地方的传统是,在建房子之前先要造好桑拿浴室。许多公寓的
一层和顶层都有一个桑拿浴室,每一个家庭都有洗桑拿浴的时间----比如星期四晚上七点
到八点(星期四和星期五一般是洗桑拿的日子)。这样一来,你就不必在这个时间去串门了。
有一次,我看到一本用英文写的赴芬兰旅游指南,书上不厌其烦地警告读者,说芬兰人从
来不在洗桑拿的时候做爱,而且要是真有这样的事情发生,芬兰人自己都会非常惊讶的。我
读到这段时忍俊不禁,因为桑拿浴在芬兰人的家里是一个很普通的地方,书里那样说不啻
警告读者不可在厨房的地板上做爱。我不认为桑拿有什么特殊之处。在有些偏远的地方,新
生儿就是在桑拿浴室里出生的 ----因为只有桑拿浴室里才有热水----按照某些地方的传统,
有些人也死在桑拿浴室里。顺便说一句,这种事情我们家可没有。

芬兰人还有许多其他的特性,与世界其他地方的人们不同。比如他们有沉默的传统。人人都
沉默寡言。他们常常站在一起,但一句话也不说。这种做法在我们家也不流行,所以我善意
地把我的家人称做“非常规类型”。芬兰人凡事还毫无怨怼。我们之所以能够熬过俄国的统
治、熬过一系列的血腥的战争和压抑的天气,完全是因为可以在沉默中忍受痛苦并有着坚定
的决心。

然而在今天,这种沉默似乎有些怪异。德国作家布莱希特二战时曾在赫尔辛基住过一段时间,
他在描绘火车站一家咖啡馆里的顾客时曾说,那些人“会讲两种语言却沉默不语。”他的话
后来广为流传,所以后来他一得到机会就逃出了芬兰。

直到今天,假如你走进任何一座讲芬兰语的城市,尤其是那些小城市的酒吧,肯定会看到
若干面无表情的人坐在那里,两眼茫然地望着前方。

芬兰人尊敬对方的隐私,这一点非常重要,所以没有人会走到其他人面前与之搭讪。芬兰人
还有一个令人不解之处,他们实际上非常友好,可很少有人能发现他们这个特点。我还知道,
在芬兰女同性恋的酒吧里,气氛却异常欢快。

既然芬兰人不喜欢面对面地交谈,整个国家就成了移动电话最理想的市场。我们对这种新玩
意如醉如痴,任何国家都望尘莫及。按照平均人口计算,哪一个国家拥有最多的驯鹿我不清
楚,细想起来可能是挪威,但是世界上每一个男人、女人和孩子拥有最多手机的国家是哪一
个却是不言自明的。人们甚至还说芬兰人一生下来就应该把手机移植到他们的身体上。

21


Just For Fun by Linus Torvalds

使用手机有多种用途。芬兰人往往相互之间发送很长的信息,或者用手机做为传输手段在中
学考试中作弊(把一个问题发给朋友,然后等待着对方长篇大论的答案)。我们还使用手机上
的计算功能,而大多数美国人根本不知道手机上还有这种功能。不言而喻,下一步就是给坐
在同一个咖啡厅里的另一张桌子旁的孤独的人打个电话,然后用手机进行交谈。尽管诺基亚
取得了辉煌的成功,但他们生产的手机也使芬兰产生了自发明桑拿浴以来最剧烈的变化。

手机在芬兰受到如此热情的接纳其实也无须惊讶。这个国家在采纳新技术方面一贯迅速和信
心十足。芬兰和世界其他地方不一样,这里的人喜欢通过电子银行支持各种费用和开展业务,
而这种所谓的发出微弱之声的“手机银行”在美国却鲜为人知。与其他国家相比,芬兰平均
上网的人数最多。有人把这种对技术的精通归咎于强大的增长率体系----芬兰人的文化水准
在世界上排名第一,大学也不收学费,所以学生们经常在大学里逗留六到七年。比如我就呆
了八年。一个人将生活中如此多的时间泡在大学里,不可能什么都学不到。也有人说芬兰人
对技术的喜欢源于对俄国的战争赔款,为了赔款而发展了航运业,因此改善了基础设施。还
有人将此照片于芬兰是个同性恋的国家的事实(曾经一度确是如此,令人不能容忍)。不管出
于什么理由,芬兰是一系列技术革新的发源地。比如有声电影的发明就在芬兰。哦,对了,
还有Linux操作系统。

我和李纳斯坐在餐桌旁。我们刚从旅途中返回。塔芙正把买的东西放进冰箱里,我给帕特里夏和丹妮亚拉买
了一本书,她们俩正在为那本书争执不休。我将一个制成标本的企鹅和一大瓶花生酱推到一边,打开录音
机,让李纳斯讲讲他的童年。
“其实,我对我的童年差不多都忘了。”他用单调的口吻说。

“那怎么可能?不就才几年前的事?”


“问塔芙吧。我对名字、别人的面孔和我做过的事情都记不住。我们家的电话号码我都得问塔芙。我能记住事
物的规则以及它们组织起来的方式,但对事情的细节却永远记不住,所以对我童年的细节忘得精光。我小
的时候都发生了什么事,我是怎样想的,都记不住了。”

“比如说,你有朋友吗?”

“不多。我不善社交。与过去相比,我现在在与人交往方面进步多了。”


“你的童年是什么样的?我是说,你是否记得某个星期日早晨醒来后,中妹妹和父母去了什么地方?”


“那个时候我父母已经离婚了。”


“他们离婚时你多大?”

“不知道。也许是六岁,也许是四岁。记不住了。”


“圣诞节呢?你记得圣诞节吗?”

“哦,我依稀记得起来衣服,然后前往我爷爷在土尔库的家。复活节也是那样。除此之外我什么都忘了。”


22


Just For Fun by Linus Torvalds

“还记得你的第一台电脑吗?”
“那是我外公给我买的一台有名的VIC-20。是装在一个大盒子里送来的。”
“盒子有多大?是像装着一双靴子的盒子一样大吗?”
“差不多。”
“你外公呢?对他还有记忆吗?”
“他大概是我最亲的亲人,我不知道……好吧,他很重,但不胖。头发都秃了。他比较内向,像个心不在焉


的教授,不过他就是教授。我常常坐在他的腿上,用键盘为他输入程序。”
“还记得他身上的味道吗?”
“不记得了。这是什么问题?”
“每个人的祖父身上都有种味道。比如科隆、波旁威士忌酒或雪茄味。他身上什么味道?”
“我不知道。我当时对电脑太痴迷,没留意。”


第二章一种操作系统的诞生

1、昨天的电脑

有些人记忆时间的方法是通过他们曾经驾驶过什么样的车子,干过什么样的工作,或在什
么地方住过,以及追求过什么样的情人。而我的生涯却是由电脑来划分的。

我成长期间只有过三台电脑。上面提到过的VIC-20,是我外祖父留给我的遗产。它是“家用
”电脑中的一种,是当今
PC机的前身。般长64电脑后来成了VIC-20的老大哥,接踵而至
的是
Amiga,这种机器在欧洲特别受欢迎。这些电脑从来未像
PC机甚至苹果
II那样流行过,
我在玩
VIC的时候,还?I已经很流行了。

在那个年代,PC机普及之前,家用电脑的多数程序使用的都是汇编语言。它们都有自身的
操作系统,等同于PC机里的DOS。由于机器不同,操作系统很可能是一种简单的格式,或
是增强的格式。那时没有什么技术标准,许多公司都想控制市场。最有名的公司之一就是
Amiga。我现在句子的开头都要用上“在那个年代……”,真是不可思议。

等我对VIC-20玩得已经很精通后,我便开始攒钱想买一台下一代的电脑。这在我生活中是


23


Just For Fun by Linus Torvalds

一件大事。前面我已经提到过,我对我的家人在某个特定的时间住在什么地方,以及其他许
多事情都记不清了,但我购买第二台电脑的过程却很难忘记。

我攒了一些圣诞节和生日的压岁钱(我生于12月
28日,那两个节日基本上凑在了一起)。
有一年夏天我还参加了赫尔辛基公司清洁队,挣了一些钱。赫尔辛基的许多花园没有美化,
保养得不太好,更像是一些娱乐场所和绿地,长着高高的树林。我们所做的就是锯掉长高的
灌木丛并把死掉的残枝拾走--这种活儿还挺有意思。我一贯喜欢室外运动。曾经一度,我还
当过邮差,但送的不是报纸而是垃圾邮件。细想起来,我在夏天基本不怎么打工。但在那些
日子里还是干了一些活。总体来讲,我的钱基本都是学校发给的奖学金。

在芬兰,给学校捐款是很普遍的事情,连公立小学也有人赞助。所以从小学四年级开始学生
就能得钱,发放的方式完全由建立基金的人决定。我记得有一种捐款是奖给班里最受人爱戴
的学生的。当时我们六年级,全班还真的举手投票表决,看谁能得到那笔钱。顺便说一下,
我当时未被选中。奖金仅有两百芬兰马克,当时只值四十美元,但对一个最受欢迎的六年级
学生来说似乎已不是个小数目了。

通常情况下,在某一个学科或体育项目中有突出表现的学生都能得到奖学金。许多奖项都是
由具体的学校发放或由州政府赞助的。有些奖学金随着时间的推移数目越来越少。我记得有
一种奖项最后只值一毛钱。发生这种情况时,学校也会出些钱补进去,但是尽管如此数目仍
然不多。这样做的目的仅仅是在每年当中把发放奖学金的传统继续下去。芬兰对学术传统非
常认真,这当然不失为一件好事。

于是我作为优秀的数学学生,每年都能得到奖学金。上高中后,奖金的数目越来越大,最多
的时候可以达到五百美元左右。因此我买第二台电脑的钱基本上是这么来的,我每月的生活
费肯定付不起电脑钱。此外我还从我爸爸那里借了一些钱。

当时是
1986或
1987年。我十六或十七岁。那个时候我已不再打蓝球。决定买何种电脑之前,
我花了大量时间进行了一番调查。当时的PC质量还不太好,我便决定不买
PC机。

我选择的是
Sinclair QL,你们当中的许多人大概太年轻,对这种机子没有记忆。

下面是
QL的简单历史:当时,Sinclair是市场上32比特的机器之一,主要用于家庭。那家
公司的创始人克里夫
?辛克莱尔
(Clive Sinclair)在英国等同于史蒂夫
?沃斯尼亚克(Steve
Wosniak)。他制作出这些电脑的配套元件,然后以
Timex的品牌在美国销售。没错,一家制
造钟表的公司进口
Sinclair的元件,然后再打着Times品牌在这里卖出。早期销售的也是配
套元件,他后来开始销售组装好的机器。

Sinclair的操作系统叫做
Q-DOS。这种操作系统是专门为那种电脑写的。按照当时的情况,
它的BASIC语言非常先进,而且有着不错的图形显示。那种操作系统最令我兴奋的一个特
点是它能进行多重任务处理。你可以同时操作多个程序。然而其
BASIC部分却不是多重任务
处理,所以同一时间之内你不能操作超过一个以上的 BASIC程序。但如果你用汇编语言编
写自己的程序,就能让操作系统列出时间表,把时间分隔开来,这样你就可以在同一时间
操作多个程序。

24


Just For Fun by Linus Torvalds

这种电脑有一个 8兆赫的 68008芯片,它是摩托罗拉 68000芯片的第二代,是个更加便宜
的版本。在内部,第一代 68000芯片是
32比特,但在外部,却以
16比特与 CPU之外的设
备进行连接,例如存储器和硬件附加装置。由于它只能在一个时间内从存储器上载
16比特,
因此
16比特的操作常常比
32比特的操作要快。这种结构非常受欢迎,今天在许多嵌入装置
和轿车里仍然有人使用。虽然芯片已经不同,但却是基于相同的结构生产的。

我的电脑中的68000芯片在与CPU之外的设备连接时使用的是
8比特,而不是
16比特。但
虽然它与外部设备互动的是
8比特,其内部却是
32比特的。这就使它在编程方面非常不错。

它的内存是
128千字节,不是兆字节,这在当时对家用电脑来说已经非常大了,而被它所
取代的VIC-20仅仅有3.5千字节的内存。因为它是一台32比特的机器,所以能毫无困难地
读取所有的内存,这在当时是前所未闻的。我之所以要买这种电脑便是出于这个原因。它的
技术非常有意思,我喜欢它的CPU。

我的一位朋友认识一家商店的老板,我希望能在他那里打折买这种电脑。但等货的时间太长,
于是我便前往赫尔辛基一家最大的书店,因为那里有一个电脑柜台。我就是在那里购买的。

那台电脑花费了我差不多两千美元。当时的情况是,低档电脑的价格总是在两千美元上下。
只是在最近两年这种情况才有所变化,现在你只需花五百美元就能买一台PC机。这种情况
和造汽车一样,没有人愿意生产低于一万美元的汽车。在某一段时间,低于一万美元就不值
得制造。不错,公司完全可以造出销售价格为七千美元的汽车,但汽车制造商们认为,凡是
能出得起七千美元的人,如果能买到附加的标准设备,比如空调,花上一万美元他们也高
兴。假如你把今年出产的低档轿车同十五年前的同类轿车相比较,就会发现,它们的价格大
体一致。其实,将通货膨胀的因素去除,它们的价格或许稍微便宜一点,然而质量却好得多。

过去的电脑就是这样。当电脑还不是人人都买的商品时,你就只能忍受两千美元的昂贵价格。
假如一台成本很低的电脑价格非常昂贵,公司就无法大量地进行销售。但生产商制造电脑的
成本并非很低,所以公司若是卖得很便宜就不合算。人们总是希望多花二百美元买台更好的
机器。

最近两年,制造电脑的成本已经大幅度降价。甚至低档的电脑质量也非常好。公司已经失去
了许多愿意多付二百美元买一台稍好一点机器的客户,它们就只好依赖价格进行推销了。

我得承认,QL的卖点之一就是它的样子非常酷。整个机身是无光泽的黑色,带着一个黑色
键盘。整个样子有棱有角,而不是那种圆圆的漂亮的机型。它的造型有点走极端。键盘有一英
尺厚,因为它与电脑联为一个整体。当时许多家用电脑就是那样设计的。在键盘的右端,即
应该是小键盘的地方,有两个具有革新意义的 Sinclair微型驱动器,它用的是只能在
Sinclair上使用的无限循环磁带。它们的作用就等于软驱。因为它是一个长长的圆圈,你可以
进行旋转,直到点到你需要的东西为止。实践证明这个创意并不是理想,因为它不像软驱那
样可靠。

于是我花两千美元买了一台Sinclair QL。我用它所做的就是不断地编写程序。我总是在寻找
有意思的事情做。我有一个 Forth语言解释程序和编译程序,纯粹是为了用着玩。Forth是一

25


Just For Fun by Linus Torvalds

种很怪的语言,现在已经没有人使用。它是一种挺好玩而且在市场上有利可图的语言,因为
可以做许多事情而在八十年代被广泛运用,但从来没有特别普及过。它对不懂技术的人来说
非常难于掌握。其实这种语言也没有什么太大用处。

我开始自己编写工具性程序。我最初为这台机器买的东西之一是一个携带
EEPROM(电子可
读及可编程序只读存储)卡的扩展底座。这是利用特殊模件自己编写的内存,关机后它仍存
在。这样一来,需要时我就能随时获得那些工具,没必要将它们写入内存,于是就能占用珍
贵的内存进行编程了。

使我对系统感兴趣的是,我买了一个软盘控制器,因为已不必再使用微型驱动器了。但软盘
驱动器上的驱动程序不好使,于是我自己又写了一个。在编写过程中,我在操作系统里发现
了一些病毒。我之所以能发现病毒,是因为我编写的一些东西无法操作。我的编码总是很完
美的,所以我知道肯定是别的地方出了差错。于是我把整个操作系统都卸掉了。

你可以列出一推关于操作系统的书籍,这些书能帮上忙。你还需要一个反汇编程序,这种工
具能把机器语言变成汇编语言。这一点非常重要,因为你要是只有机器语言的版本,执行指
令时就非常困难。你会发现一个指令跳到一个数字的地址,读起来非常困难。一个好的反汇
编程序可以为数字起名字,也可以让你起名字。你还可以使用它帮助你寻找特殊的相关指令。
我自己有一个反汇编程序,可以用它创立相当不错的目录。一旦出现差错,我就可以进入反
汇编程序,让它从特殊的地点找出目录,而且我还能看到操作系统将要执行的任何任务。

有时我使用反汇编程序并非是因为出了故障,而是想弄明白它到底能做些什么。

QL令我讨厌的一个地方是,它只有一个只读操作系统,对于一切都无法改变。它在某些地
方的确有HOOKS(是一种消息处理机制,它使程序员可以使用子过程来监视系统消息,并
在消息达到目标过程前得到处理--译注)。HOOKS就是你能切入你自己的编码接管某些功能
的地方。但
HOOKS只出现在某些特定的地方。要是能完全替换你的操作系统就会好得多。在
只读存储器中运行一个操作系统是一种非常糟糕的想法。

虽然我说过,芬兰是一个非常乐于接受新技术的国家,但
Sinclair QL在这个欧洲第七大国
却没有站住脚跟。由于QL在芬兰的市场非常之小,每当你想为反传统的尖端机器购买升级
设备时,只能通过邮寄的方式从英国购买。你必须翻阅许多产品目录,直到找到一家销售你
所需要的设备的厂家为止。然后你还得准备好保付支票,再等上几个星期的送货时间。那个
时候还没有网上购物和在网上使用信用卡。在我很希望把我的内存从128千字节扩展到640
千字节时,我只能通过邮购的方式获得。我买了一个新的汇编程序,将汇编语言转换成机器
码(数字
1和0),又买了一个编辑器,后者主要是为编程使用的文字处理程序。

新的汇编程序和编辑器都不错,但是它们是在微型驱动器上,无法放入
EEPROM。于是我
自己编写了汇编程序和编辑器,应用于我所有的编程之中。编辑器和汇编程序都是用汇编语
言写的,按照今天的标准看上去非常愚笨。这种语言又复杂又费时,我想用汇编语言解决一
个问题要比用C语言解决一个问题多出一百倍的时间,而当时C语言已经存在了。

我给我的机器带着的基本处理程序增加了好几个指令,所以只要我想编辑任何东西,机器
就会自动操作我的编辑器,它立刻就会显现出来。我的编辑器比机器本身带的编辑器速度要

26


Just For Fun by Linus Torvalds

快。我可以在显示器上以极快的速度书写文字,我为此而感到骄傲。通常用这样的机器,在
显示器上写满字需要很长的时间,你可以看到屏幕在慢慢地滚动。但是用我的编辑器在书写
时速度非常之快,屏幕滚动能给人造成一种模糊的感觉,这让我很得意。这一点对我非常重
要。它使我的机器显得性能惊人,而且我知道为了让我的操作更迅速,自己已做了大量的工
作。

那时,在我所认识的人当中,像我那样沉迷于计算机的人微乎其微。学校里有一个电脑俱乐
部,但我几乎不怎么去。那个俱乐部主要是为那些想了解电脑的孩子们创立的。我们的高中
只有二进五十名学生,但我想他们在十岁以后就再没有一个人玩电脑了。

通常我用我的Sinclair QL电脑做的事情是复制游戏。我曾用VIC-20电脑为我喜欢的游戏作
过翻版。有时我还让游戏升级。但多数情况下它们都得不到改进。机器更高级了,但概念并无
改进。我最喜欢的游戏大概是“小行星”,但我怎么也不能很好地将其复制下来。原因是那
个时期所有游戏机中心的“小行星”游戏都是用真正的矢量图形显示进行的。那些游戏的图
形不是靠小粒(即像素)显示的,而实际与阴极射线管的原理相同:电子是从阴极射线管的
后面通过电子枪发射出来,然后用磁铁进行转向,这样便可以高清晰度地显示图像,但如
想复制过来就不那么容易了。你当然可以复制,但假如你的电脑没有特殊的图形显示能力,
复制出来的东西便与原本的“小行星”相去甚远。

我记得曾经采用汇编语言对“穿靴人”做过翻版。第一个步骤是,你必须记住穿靴人里的人
物是什么样子。然后你把它们画在一张
16*16平方厘米的坐标纸上,再涂上颜色。你若有艺
术细胞,就可以画得很逼真。然而若像我似的完全不懂艺术,画出来的人物就会像是穿靴人
的生了病的小表弟。

所以这个复制做得并不理想。然而我却为此感到自豪。做出来的那个游戏是可以玩的,于是
我把它寄给了一家发表电脑编码的杂志。我曾经把其他的程序寄给一些杂志,所以我以为我
这次被他们接纳应是理所当然的事。

事实却恰恰相反。

其中的一个问题是,无论你在什么地方出现一个极为微小的错误,它就会运转不灵。我自己
也写过一些游戏。然而创作需要某种心态。由于游戏需要大量的表演,就需要你对电脑的硬
件十分精通。这我做得到。但我却不具备玩游戏的感觉。一个出色的游戏通常并不是它的速度
有多快,也不是它的图形显示得多么漂亮。它必须能让你感到玩得起来--能吸引人。游戏和
电影颇为相似。特殊效果是一回事,然而你还是需要情节。我所有的游戏从来都没有情节。游
戏还需要有发展,有想法。发展常常就是让游戏速度越来越快。穿靴人就是这种模式。进展时
也产生变化,或是让你能够更紧密地跟踪里面的怪物。

我对“穿靴人”感兴趣的另一个原因是,它能够解决图形显示闪烁不定的问题。这在老式的
电脑游戏中是一个比较普遍的问题,因为没有特殊的硬件,你的人物就会闪烁不定。你采用
的办法就是去掉老拷贝,重写一个新拷贝。假如你的时间恰巧处理得不好,人们就能看到没
有拷贝时的状况,于是就更会出现闪烁的情况。解决这一难题有许多种方式。你可以先画一
个新人物,然后再把以前的人物去掉来避免这一问题。但你必须小心谨慎,不要把老人物被
新人物覆盖住的那部分也给去掉。这样你就能获得一个良好的效果,不会再看到烦人的闪烁


27


Just For Fun by Linus Torvalds

现象。这一解决方案的问题是创作时相对昂贵,而且特别费时间。

游戏为何总是处于技术领先的地位,而且编制人员为什么总是先制作游戏程序,其中是有
原因的。一方面是关在房间里玩电脑的聪明的程序编制人员都是十五岁左右的孩子 (我十五
年前就这么认为,至今对此仍深信不疑)。游戏之所以总处于领先地位还有另一个原因:它
总能推动硬件的发展。

你若是看一下今天的电脑,就会发现它们速度快得可以做任何事情。但考验硬件极限的往往
是动作感过强的游戏,如现在很流行的一些三维游戏。从根本上说,通过电脑上的游戏,你
可以看出硬件是不是过关。进行文字处理时,速度慢上一二秒钟也不会在意,但玩游戏时,
出现十分之一秒的误差也非常明显,游戏过去都比较简单,时至今日,编程只是任何游戏
的一小部分,此外还有音乐和情节。假如你把制作游戏比做拍电影,编程者在一定程度上就
等同于摄影师。

就这样,我使用了 Sinclair QL电脑三年:从高中到赫尔辛基大学,再到芬兰部队服役。这
个电脑不错,但我们肯定会分手。在最后的一两年里,我发现了它的短处。68008是个不错
的CPU,但我在书上了解到了下一代的 68020,得知了诸如内存管理和分页等种种功能,
在使用低档电脑进行工作时,这种新的电脑可以完成非常重要的任务。

Sinclair QL令我讨厌的地方是,它的操作系统虽说能进行多重任务处理,但在任何时候都
会出现死机,因为它没有保存措施。只要一个任务出现差错,就能让整个机子死机。Sinclair
QL是克里夫?辛克莱尔爵士最后一次设计和制造的电脑,原因之一是这种电脑在商业上并
不成功。它的技术非常有意思,但公司却存在着生产问题和质量保证问题,而且最终宣传上
也很失败。此外,市场竞争也开始变得越来越激烈。

到了八十年代末期,你便开始想象,或许有那么一天,大街上的每一个人都可能拥有一台
电脑,哪怕只是进行简单的文字处理。而且种种迹象表明,发展方向是
PC机。不错,IBM
最早制造的 PC机尽管有许许多多的技术问题,但却开始摆满了商店的货架,销售得极为
成功。PC机的另一个吸引人的地方是:外围设备非常标准,而且很容易就能搞到。

所有关于这种较新的CPU的文章我都阅读,它可以完成我想完成的任何任务。显而易见,
看上去非常有意思的68020发展前景不佳。我完全可以为QL买一个升级的CPU。在那个年
代,这便意味着重新组装一台机器。尽管如此,操作系统还是没有内内存管理,所以我不得
不自己编写。于是我想:这将是很费力的一步,而且获得一个CPU过于昂贵。

此外,令我越发感到头疼的是:为电脑购买设备的问题依旧存在。Sinclair QL电脑的产品目
录似乎根本就没有过,所以你不可能简单地抄起电话,像定购西尔斯百货商店的邮购商品
那样定购内存设备。再说,通过邮局从英国订货的做法已经过时了。当时还没有用收缩封套
包装的软件盘,这我倒不在乎,因为我都能自己编写。

这个头疼的问题却给我带来了一个好处。在我琢磨着把我的机器处理掉时,也决定把我的附
加设备卖掉。我指的是我买的硬盘驱动器,因为要扩展内存,我一分钟也不能忍受了。当时
没有人在大街上到处找这种东西,所以我只能在电脑杂志上登广告,然后就祈祷等待着。就
这样,我认识了我的好朋友乔科?维亚鲁马奇(Jouko Vierumaki)。在整个芬兰,他大概是


28


Just For Fun by Linus Torvalds

第二个拥有 Sinclair QL电脑的人。他对我的广告做出了回应,骑着自行车来到我家,买走
了我的一些外围设备。后来,他也让我学着打斯诺克台球。

2、上大学

我在上大学的第一年,住在彼得盖坦街,我的宿舍在一层,靠窗户的一张桌子上就摆着
Sinclair QL电脑。但我没有编写多少程序,原因之一是我必须集中精力读书,原因之二是我
也找不到什么项目去做。没有项目可做就会缺乏热情。你总是在寻找能够让你鼓起劲去做的
事情。

当时似乎是参军的好时光,而且我也知道那是早晚的事。我当时十九岁,正因为自己的电脑
毛病太多而心情沮丧。而且,当时也没有任何有意思的电脑项目,于是我就搭上了一辆开往
拉普兰的火车。

前面我已经说过,关于军队在体力方面会对我们做出什么样的要求我是一无所知的。所以在
那里手执武器上了一个月的“体育课”之后,我便觉得在我有生之年完全有资格从此一动
不动,享受平静的生活了。惟一可做的事情就是把编码打入键盘,或者手里端着一瓶比尔森
啤酒(说真的,在我复员整整十年后,才第一次参加一次剧烈的活动。当时大卫硬拉着我去
冲浪。旧金山半月湾的强大海浪差点没把我淹死,我的腿一连酸了好几天)。

部队服役结束于 1990年
5月
7日。塔芙会告诉你,我连我们的结婚纪念日都记不住,但我
却不大可能忘记我离开部队的日子。

刚一离开部队就想弄只猫。复员的几个星期前,我一个朋友的猫下了一窝崽,于是我把他剩
下的唯一一只小猫买了下来。那是只白色的公猫,长得很漂亮。它生下来的头几个礼拜就在
室外跑来跑去,所以在我妈妈公寓的室内和室外养活起来都很容易。我给它起了个名字,叫
兰迪。它现在已经十岁了,和它的主人一样完全适应了加利福尼亚的生活方式。

那年整个夏天我没有干什么正事。我大学二年级的课程直到秋天才开始。我的电脑状态也很
不佳。于是我就穿着一件破旧的睡衣,逗兰迪玩,偶尔和朋友们联欢会,让他们笑话我的保
龄球和台球的拙劣技术。当然,我对我的下一部电脑也做了一些设想。

我面临的是一个电脑迷的困境。我同其他随着68008芯片一起长大的电脑迷一样,特别讨厌
PC机。但在1986年
386芯片出台后,PC突然看上去有了魅力,凡是
68020能做的事情它们
都能做。到了1990年,大规模的生产使这种机器的价格急剧下跌。我对钱很在乎,因为我手
拮据。于是我就希望拥有一台这样的电脑。正因为PC非常红火,升级材料和装置很容易就
能弄到。在硬件方面,我特别希望有一台标准的机器。

我决定来个大跳跃,超越界限,而且弄一个新的CPU这事的确让人兴奋。于是我便开始把
我的Sinclair QL的零件一点点地卖掉。

29


Just For Fun by Linus Torvalds

每个人都会一本改变其一生的书籍,比如《圣经》、《资本论》、《星期二和莫瑞在一起》、《我想
知道我在幼儿园里学到的一切》等等(我真诚地希望,在你读过了本书序言和我的关于生命
意义的理论之后,这本书也能对你产生影响)。把我推向生命高峰的是安德鲁?塔南鲍姆
(Andrew S. Tanenbaum)写的《操作系统:设计和实现》。

我已经选好我的秋季课程,其中最让我期待的是
C程序语言和UNIX操作系统。在等待着上
课期间,我还买了一本上面提到的教科书,希望能先读一下。在这本书中,住在阿姆斯特丹
的大学教授安德鲁?塔南鲍姆讨论了MINIX,那是他为UNIX撰写的教学辅助软件。MINIX
也是
UNIX的小型翻版。一旦读完了介绍,了解到UNIX背后的理念以及那个强大、利索、漂
亮的操作系统所能做到的事情后,我便决定弄一台机器来操作UNIX。我将操作MINIX,那
是我所能找到的惟一版本。

通过阅读和对UNIX的了解愈来愈深,我的热情高涨起来。
说实话,我的热情从来没有低落过(我希望你在做某件事时也能说出同样的话)。

3、从 UNIX开始

赫尔辛基大学第一次拥有UNIX是在1990年秋季开学的时候。

那个强大的操作系统是美国电话电报公司的贝尔实验室于六十年代发明的,然而它的开发
却是在别的地方。前一年,也就是我上大学的第一年,我们有一台操作VMS的VAX。这个
操作系统糟糕透顶,你决不会说出:“嘿,我在农时也想装一个 VAM”这样的话,它只能
让你说:“你怎么会使用这个破玩意?”它用起来极不方便,没有多少工具,也不适合轻
松容易地进入因特网,而因特网是在UNIX上面操作的。你甚至都无法轻易地估算出文件到
底有多大。坦白地说,VAM可能很适合某些操作,比如数据库。但这种操作系统无法让你为
之感到兴奋。

赫尔辛基大学当时意识到应该淘汰诸如
VMS类的软件。学术界已经对UNIX产生了越来越
大的兴趣,于是我所在的大学购买了一台操作 Ultrix的微型
VAX,Ultrix是
DEC公司生产
的一种UNIX版本。

我特别渴望操作 UNIX,将我从安德鲁?塔南鲍姆书上所学到的东西进行试验。要是我有一
台386,它肯定会对我能进行的一切探索感到兴奋不已。但是,我无法凑齐一万八千芬兰马
克买一台 386。我知道一旦秋季学期开始后,我就能使用我的 Sinclair QL进入大学新的
UNIX电脑,直到我自己凑齐了钱买一台PC机,再在上面操作UNIX。

因此,那年夏天我做了两件事。第一件是什么都没做。第二件事是读完了七百一十九页的《操
作系统:设计和执行》。那本红色的简装本教科书差不多等于睡在了我的床上。

赫尔辛基大学为微型
VAX电脑购买了十六个客户执照。这意味着“C语言和UNIX”课程的
选修学生人数被控制在了三十二名 --我想学校的想法是十六个学生白天使用机器,另外十


30


Just For Fun by Linus Torvalds

六个学生晚上使用。教师和我们一样,对UNIX也不太熟悉。他对此公开承认,因此也没构
成什么问题。但他每次都比学生先读一个章节。有时学生也会提前跳读三个章节,因而上课
成了一种游戏,学生们问的问题都是在三个章节之后才能学到的,目的是为了难住教师,
看他是否已经读了那么多。

我们在UNIX的大世界中都是婴儿,一边学习一边完善这门课程。然而关于这门课最明显的
是,在UNIX背后有一个非常独特的理念。你在这门课的第一个小时就抓住了这一点,剩下
来就是解释细节了。

UNIX的独到之处在于它所追求的基本理想。它是一个干净利索、非常漂亮的操作系统。
UNIX具有程序的观点,凡是做任何事情都是一个过程。这里有一个简单的例子。 shell
command是为进入操作系统而键入的一种指令,在 UNIX中,它并不像在DOS中似的被装
在操作系统里。它只是一个任务,同其他的任务相同。这个任务是从你的键盘中读出的,然
后再写回到显示器。任何能做的事情的东西在UNIX里面都是一个程序,此外还有文件。

吸引我的就是这个简单的设计,它也吸引着大多数对 UNIX感兴趣的人(至少对我们电脑
迷们颇有吸引力)。你在UNIX上完成的大部分任务都是通过六个基本操作完成的,它们被
称作“系统呼叫”(system call),因为它们是你对操作系统的呼叫,你便让它为你完成任
务。通过这六个基本的系统呼叫,任何事情你都可以完成。

此外还有“创建子进程”(fork)的概念,它是
UNIX的基本操作之一。当一个程序创建子
进程时,它便把自身完全复制出来。这样你就有了两个相同的拷贝。复制拷贝多数情况下再
去执行另一个程序--用一个新项目替换自己。这便是第二个基本操作。其他四个基本系统呼
叫--打开、关闭、读和写--都是为了访问文件的。这六个系统呼叫便组成了UNIX的简单操作。
当然,从细节方面讲,还有数不清的其他系统呼叫。然而一旦你明白了这六个基本系统呼叫,
你就了UNIX。UNIX的好处之一是,你并不需要拥有复杂的连接去创立复杂的事物。你可以
通过简单事情的互动来建立任何程度的复杂任务。你只需在简单的程序之间创造出交流渠道,
在UNIX中叫做“管道”(pipes),就能解决复杂的问题。

一个差劲的系统在做任何你想做的事情时都需要有特殊的连接。UNIX则恰相反。它提供给
你执行任务的材料,这些材料足以让你完成任何事情。这就是所谓的干净利索的设计。

语言其实也是如此。英语有二十六个字母,你可以用这些字母创造出任何单字。另一种语言
是汉语。在汉语中,你所想到的任何一件事都由一个字来代替。你一开始用的就是复杂的形
态,然后在有限的方式中将复杂的形态组合起来。 VMS的大体上也是这种思路, Windows
的方法也是如此。而 UNIX的理念是越小越漂亮。一小堆简单基本的建筑材料,结合起来就
能创造出无限的复杂表述。

物理的规则亦是如此。你努力找出基本的规则,而这些规则都是相对简单的。从那些简单的
规则中,通过相互作用产生令人不可思议的复杂性。

那种简单的设计并非是自然产生的。 UNIX是美国电报电话公司贝尔实验室的丹尼斯 ?里奇
(Dennis Richie)和肯?汤普森(Ken Thompson)花了很大力气设计完成的。你也不能认为
简单就是容易。简单需要特别的设计和很高的品味。

31


Just For Fun by Linus Torvalds

让我们再回到人类语言的例子上。像图画似的中国象形文字是最先产生的,然后再追求“简
化”。而建筑材料似的做法则需要更多的抽象思维。同样,你不能将
UNIX的简洁同上不了
档次混淆起来--事情正好相反。

但这并不是说,创造
UNIX的最初原因有多么复杂。它和计算机的许多其他事情一样,都是
以游戏开始的。最初有人想在等离子显示器上玩电脑游戏,那就是
UNIX发展起来的原因。
正因为当时人们觉得这个操作系统不是一个严肃的项目,美国电话电报公司才认为它并非
是商业上的冒险尝试。事实上,美国电话电报公司的垄断受到制约,对其限制之一是不能推
销电子计算机。所以创造
UNIX的人有很大的,尤其在为大学服务方面没遇到什么阻碍。

于是乎,UNIX在学术界就演变成了一个大项目。到 1984年美国电报电话公司分家后,它
已被允许进入电脑业,那时大学里的计算机专家们 --尤其是加州大学伯克利分校的专家们 -已
经在比尔?乔(
Bill Joy)和马歇尔?克拉克?迈克库塞克(Marshall Kirk McKusid)的指导
下,把开发和改进
UNIX的工作进行了许多年了。

但到了 1996年初,UNIX已经成为所有超级计算机和服务器的头号操作系统。它的市场非
常大。但当时的问题之一是,已经出现了数不清的操作系统的竞争版本。有一些是从控制得
比较严密的美国电报电话公司代码库里创造出来的(即所谓的“V系统 ”),另一些人则
是从加州大学伯克利分校的代码库衍生而来(即
BSD--伯克利软件分布),还有的则是这
两者的结合体。

其中一个BSD的衍生版本特别值得一提。那是
386BSD项目,是比尔?乔利兹(Bill Jolitz)
在代码库的基础上做成的,分布在因特网上。后来它又进一步分裂,成为人人都可以获得的
BSD--Net BSD,Free BSD和Open BSD,在使用UNIX的群体中引起广泛的注意。

于是美国电报电话公司突然觉醒了,将加州大学伯克利分校告上了法庭。最初的代码是电报
电话公司的,但绝大多数后期工作都是在伯克利完成的。加州大学的校务委员们声称他们有
权传播和销售他们的UNIX版本,而且还可收取象征性的费用。而且他们还向人证明,他们
已为此做了大量工作,基本上把电报电话公司的软件进行了重写。官司的结果是,Novell公
司从电话电报公司买断了UNIX,一部分体系不得不从电报电话公司中分离出去。

同时,那场无休止的官司却让一个儿童赢得了一些时间,使自己成熟和发展起来。具体地说,
Linux获得了时间去占领市场。我自己走在了我的前面。

坦白地讲,在使用UNIX的人当中,有许多是几乎发疯的人。他们不是集邮疯子,不是把邻
居的狗毒死的疯子,而是一些生活方式很另类的人。

别忘了, UNIX最初的主要发展是在六十年代和七十年代,我当时正在祖父公寓里的一个
洗衣筐子里睡觉。当时正是美国嬉皮士的时代,而那些人也都懂技术。有关
UNIX应共享的
理念和当时的社会环境有关,而并不应简单地归功于其开放源代码的系统本身。那是一个了
各种理想的时代。革命、解放、自由爱情(自由爱情我可没赶上,即使赶上也不知该怎么做)
……于是
UNIX的相对开放性对这类人就特别有吸引力,尽管在当时它还缺乏商业上的价
值。

32


Just For Fun by Linus Torvalds

我第一次了解到UNIX可开发性的一面大概是
1991年前后,当时拉尔斯?沃兹尼亚斯(Lars
Wizenius)拉着我去赫尔辛基理工大学参加一个集会。人人都知道,这所大学根本不在赫尔
辛基,而是在城市边界线以外的艾斯普。学校的人想和豪华的赫尔辛基联系起来,哪怕只是
在名义上。

当时的演讲者是理查德?斯多曼(Richard Stallman)。此人是自由软件的鼓吹者。

1983年,他开始研究
UNIX的一个替代物,将其称作 GNU系统,其含义是“
GUN不是
UNIX”(GNU是“GNU is Not UNIX”的字首缩略语--译注)。这些只有在电脑界内部开的玩
笑,常人是很难听懂的。电脑迷之间流传的文学游戏实在是数都数不清。

更重要的是,RMS(理查德?斯多曼希望别人这样称呼他)还撰写了《自由软件宣言》和自
由软件产权证书,即
GPL。他首先提出的关于开放源代码的概念完全是有意的,而并非出
于偶然,和UNIX最初的开放发展理念是相吻合的。

我得承认,我对社会政治方面的问题了解得不多,而这些问题过去和现在对 RMS都非常重
要。我对他所创立的开放软件基金会的宗旨也知之甚少。事实是,我对1991年人们谈论的话
题也没有多少记忆,这说明当时它对我的生活并没有产生多大的影响。我当时所关心的是技
术,而不是政治--我们家里的政治已经够多的了。但拉尔斯是个思想理论家,于是我便跟在
他身后去听听。

我在生活中第一次见到了典型的留着长发、蓄着长胡子的黑客形象,其代表就是理查德。这
样的人在赫尔辛基为数不多。

我当时可能没有看到眼前的光芒,但我猜他说的一些话也多少给了我一些锾。毕竟,我后来
为Linux使用的就是
GPL。就这样,我再一次走在了自己的前面。

4、第一台 386和终端仿真

1991年
1月
2日。

在我的日历上,圣诞节和我的二十一岁生日是两个最重要的能让我得到金钱的日子,而这
一天是这两个日子之后商店开门的第一天。

我手里攥着在圣诞节和生日得到的钱,做出了一个重大的财政决定:准备买一台价格一万
八千芬兰马克的计算机。这差不多等于三千五百美元。我没有这么多钱,所以打算首付三分
之一,剩下的用赊账方式来付。其实那种电脑的价格是一万五千芬兰马克,其余的三千马克
税款可在三年之内付清。

我去的是一家小店,也就是那种夫妻店,只是我去的这家只有丈夫,没有妻子。我对生产厂


33


Just For Fun by Linus Torvalds

商不太在乎,所以决定买一台杂牌的,装在一个白色大箱子里的电脑。老板把一张价格表递
给你,上面有你想要的CPU、价格以及硬盘的大小。我想要大功率的。我希望内存是
4兆,
而不是
2兆。我希望我的CPU是
33兆赫的,当然,要是
16兆赫也能凑合。不,我要买就买
最好的。

我把自己希望的规格告诉他们,他们就给你组装好。如今在因特网和快递的年代,这听起来
似乎很怪。三天以后你去提货,但那三天就像过了一个礼拜。1月
5日,我让爸爸开车帮我
把新电脑运回了家。

这台电脑不仅是杂牌,而且其貌不扬。它的颜色灰蒙蒙的。我买这台电脑并不是因为它看上
去很酷。它的样子极不好看,有一个 14英寸的显示器,是我所看到的价格最便宜也最笨重
的机器。我用 “笨重”这个词,意思是说很少有人拥有这么大功率的电脑。我不想将其描绘
成样子难看、但功能齐全的电脑--就像是一辆沃尔沃轿车。但事实是,我希望这台电脑靠得
住,而且最终我需要升级时,它也能轻易地做到这一点。

这台电脑有一个DOS操作系统。我想使用UNIX的变体MINIX,所以我订了货,然而这个
操作系统需要等一个多月的时间才能到达芬兰。当然,你也可以在一家电脑商店买一本关于
MINIX的书,但人们对这种操作系统的需求非常之少,所以你必须事先向书店订购。操作
系统的价格是一百六十九美元,再加上税,还有别的什么费用。当时我觉得这简直太不可思
议了。坦白地说,我今天仍旧这样认为。当时那一个月让我觉得就像度过了六年。在我等待买
我的PC机时,也没有经受过那样大的烦躁不安。

当时正值隆冬。你若从寝室里出来,就可能会遇到被老太太们撞倒在雪地上的危险。这些老
太太们实在应该呆在家里为她们的家人煮煮白菜汤,或一边织毛衣一边在电视上看冰球,
而不是应该出来趔趔趄趄地瞎溜达。

那个月里,我基本上是在用新电脑玩“普鲁士王子”游戏。不玩时就看书,以便弄明白我买
的电脑的功能。MINIX软件终于在一个星期五的下午到了,当天晚上我便将其装了上去。你
得用十六张软盘才能把这个软件装入计算机。然后整个周末就都花在了熟悉这个新系统上。
我学会了这个操作系统的好的一面,但更重要的是,也了解到了我不喜欢的一面。我从大学
的电脑上把我熟悉的程序下载下来,来弥补它的不足之处。总之,我用了将近一个月左右的
时间,才使这个系统完全变成了我自己需要的系统。

住在阿姆斯特丹的、撰写MINIX的安德鲁?塔南鲍姆想把这个操作系统作为教学工具,于是
在一些不利的方面它都被故意损坏了。 MINIX也得到了一些改进,最出名的一个改进是一
个叫布鲁斯?伊文斯(Bruce Evans)的澳大利亚人进行的,他使用的是
MINIX386。他的改
进使
MINIX在 386上运行起来更方便。在我购买这台电脑之前,我就一直在网上跟踪
MINIX的消息,所以从一开始我就想使用它的升级版。但是,你不得不买
MINIX的正版,
然后再做大量的工作,引入伊文斯的改进--这是工作的主要任务之一。

MINIX有一些性能令我很不满意,其中最大的失望是终端仿真(terminal emulation)。仿真
很重要,因为我只能依赖这个程序,才能让我家里的电脑模仿大学的电脑。每当我拨电话接
通大学的电脑,使用强大的UNIX工作或仅仅是上网时,都使用终端仿真程序。

34


Just For Fun by Linus Torvalds

于是我开始做一个项目,制作自己的终端仿真程序。我不想在 MINIX底下做这个项目,而
是想在硬件水平上完成它。这个终端仿真项目也是一个很好的机会,可以让我了解386硬件
的工作性能。我前面已经说过,这时正值赫尔辛基的冬天。我的电脑又笨又大。这个项目最重
要的部分就是悟出这台机器都能做些什么,并从中获得乐趣。

我不得不从BIOS开始,BIOS是计算机启动的早期
ROM编码。它可读软盘和硬盘。所以这
次我在软盘上操作。它读出软盘的一个扇区并跳到那里。这是我的第一台PC,我不得不学着
如何进行这种操作。386是以“常规模式”启动的。但为了充分利用全部的CPU和进入
32比
特模式,你只得进入“保护模式”。在此之前,你得进行大量的复杂的测试。

为了制作仿真程序,你需要了解 CPU是怎样工作的。其实,我用汇编语言收发室的部分原
因就是为了了解 CPU。其他你还需要了解的事情包括:怎样写入显示器,怎样读键盘输入,
怎样读写调制解调器--但愿我的这些文字不会把非电脑迷们吓跑。

我想出两条独立的线程。一条线程从调制解调器读出,然后在显示器上显示。另一条线程从
键盘上读出,然后写入调制解调器,这样就会在两条线程上运行着两条管道。这叫做任务转
换,386有支持这一程度的硬件。

我写的最早的试验程序是使用一个线程将字母
A写到显示器上。另一个线程写B。我知道,
这听起来没有什么奇怪的。我把此编入程序,让其在一秒钟之内出现若干次。在定时器的帮
助下,我使这个程序这样运转:显示器上先出现一连串的字母
A,然后突然之间,转变成
一连串的字母
B。从实际的角度看,这是一个完全没有任何用处的练习。但却是一个很好的
方式,显示出我的任务转换是可行的。做到这一点大约花了我一个月左右的时间,因为我必
须一边做一边学习。

于是,最终我便能改变由一连串
A和一连串
B组成的两个线程,从而使数据一个读自调制
解调器,再写入显示器,另一个读自键盘,再写入调制解调器。我有了自己的终端仿真程序。

每当我想读新闻,我就运行自己的程序。我把自己的软盘插进,重新启动机器,就能从大学
的计算机里读新闻了。倘若我想改进终端仿真组合程序,我就启动MINIX,用它进行编程。

对此我感到非常骄傲。

对于我的了不起的个人成就,萨拉是了解的。我显示给她看,她盯着显示器看了大约五秒钟,
看着上面是一串
A和一串
B,说了声“很好”,便没什么感觉地走开了。我意识到我的成绩
看上去并不辉煌。它虽然看上去平平,背后却包含了大量的工作,犹如你指给人看你铺设了
一条长长的柏油马路,但想向别人解释这条马路的意义是完全不可能的。另一个目睹我成绩
的人大概是拉尔斯--另一个讲瑞典的学生,他和我同一年主修的计算机专业。

当时是三月,也可能是四月,就算彼得盖坦街上的白雪已经化成了雪泥我也不知道。不过我
也并不关心。大部分时间我都穿着睡衣,趴在我相貌平平的计算机前。窗户上的窗帘遮得严
严密密,把我和阳光--更不用说外部世界--隔离开来。我每月都要为新电脑付款,预计在三
年之内付清。当时我不知道的是,我的款项在第二年的就不用再付了。那时我已经写出了

35


Just For Fun by Linus Torvalds

Linux,它将被许多人见到,而不仅仅只是萨拉和拉尔斯。当时,现在跟我一起在Transmeta
公司工作的彼德?安文(Peter Anvin),为了帮我偿付我的电脑钱,开始在因特网上为我募
捐。

钱就这样来了。别人都知道
Linux并没有让我获利,于是人们便觉得,让我们大家凑点钱,
替李纳斯把电脑钱还清。

这实在太好了。

我实在是没有钱。我一向认为不应该向别人要钱或乞求钱,这一点非常重要,但事实上我却
得到了钱,所以……让我激动得无话可说。

Linux操作系统就是这样开始的。

我的实验程序变成了终端仿真组合程序。

《熏鲱》杂志将我派往芬兰,去采写报道奥卢的文章。奥卢是一个新崛起的高科技中心,虽然它的位置十分

可怕:离北极圈开车只有几个小时的距离,里面却有一百四十一家新成立的公司。这是一次极好的机会,

我可以在赫尔辛基见到李纳斯的父母和他的妹妹萨拉。

李纳斯父亲尼尔斯的绰号叫尼基,他在赫尔辛基火车站广场对面一家饭店的大堂里见到我,饭店的名字叫
瓦库那。他身材瘦长,戴着厚厚的眼镜,留着列宁式的胡子。他刚刚结束了芬兰新闻社派他在莫斯科长达十
年的工作,目前正在写一本关于俄国的书,并正在考虑是否去华盛顿任职。他觉得那个地方没有什么意思。
几个月前,他荣获了著名的全国新闻奖,他的前妻安娜后来说那个奖项“使他变得温和了许多”。

黄昏时分,他开着他的沃尔沃S70轿车,拉着我去看被白雪覆盖的、李纳斯成长的地方。他指给我看一幢结
实的建筑物,说那是父子俩都曾就读过的小学。然后我们又驱车路过了李纳斯生下来后度过的最初三个月
的他祖父母的公寓,接着又来到了那栋俯瞰花园的楼房,他们全家在那里过了七年。其中的一年尼基曾前
往莫斯科,成为一名共产主义者。当时李纳斯五岁。而后他又指给我看那座黄色的建筑物,尼基与安娜离婚
后,李纳斯和他妹妹就住在那里。李纳斯年轻时的电子商店已经不存在,在街头原来的地方现在是一座成
人录影带小铺。最后我们驱车路过了最重要的一幢物,即五层楼高的李纳斯外祖父母居住的公寓,也就是
Linux系统的诞生地。安娜至今仍住在那里。它看上去就像是十二月底曼哈顿的东区。

尼基很滑稽,又聪明,善于自嘲,而且许多动作和他儿子一样,比如在说话时喜欢用一只手握住自己的下
巴。他们俩笑起来也很相似。然而这位社会主义的忠实信徒和他儿子不同的是,他终生热爱体育。他在篮球
队打球,天天跑五英里,每天早晨在结冰的河里冬泳。虽然他已经五十五岁,但走起路来却精神抖擞,看
上去只有他三分之二的年龄。他和李纳斯的另一个区别是:尼基似乎过着一种非常复杂的浪漫生活。

我们在赫尔辛基市中心的一家拥挤的餐厅里吃晚饭,尼基谈起了李纳斯作为一个激进的共产党人的儿子成
长起来所面临的困难。他说他自己常常出外演讲,一度还做过一个小官。他说李纳斯由于父亲的激进政治观
点,常常受到同学们的挪揄,有些父母甚至不让他们的孩子和他一起玩。正因为如此,尼基解释说,李纳
斯的童年生活虽然被左倾的政治思想所包围,他却努力使自己从这种氛围中脱离开来。尼基说:“他不让
我谈论我的观点,我一开口讲他就会离开房间。要么他说话时就总跟我对着干。我知道,由于他有这样一个
父亲,在学校里总是受到嘲弄。他对我的态度是:‘别让我陷入这种尴尬的境地。’”


36


Just For Fun by Linus Torvalds

尼基把带到他家,他说我们可以在他的厨房里喝两杯啤酒。他的家坐落在中央商业区的北部,那里一排排
的楼房是二十年代为工人阶层建造的。我们爬上楼梯到了他的公寓,在门口把鞋子脱掉。他的房间让人回想
起六十年代末期反对工业文明的景象:灯罩是用手织的篮子做的,
墙上挂着第三世界的图片,屋子的角落里还垂吊着各种植物。我们在厨房的餐桌前落座。尼基一边斟啤酒一
边谈起了他当父亲的感受:“一个当父母的人不应该从他养育了自己孩子的角度去想问题。”他说。这时他
用手机给和他同居的一个女人打电话。他说李纳斯现在刚刚
开始阅读他多少年来一直敦促他读的历史书籍,但李纳斯大概还从来没有读过他自己爷爷写的诗歌。


我问尼基他是否对电脑程序表示过任何兴趣,或让李纳斯教给他一些最基本的电脑常识。他回答说从来没
有。他说父子完全是不同的个体,而深入探究李纳斯的激情就等于“侵犯他的灵魂”。看起来,他作为一个
名人的父亲似乎不觉得有什么让人不舒服的地方。他获得全国新闻奖后,有一家报纸发表了一篇关于他的
小传,其中引用他的原话说,在李纳斯还很小的时候,每当他去外面的操场接李纳斯时,别的孩子就会指
着他说:“瞧,那是李纳斯的爸爸。”


李纳斯的妹妹萨拉?托沃兹是乘火车从她的家赶过来的,她的家在一座小城市里,位于赫尔辛基以西,那
里街道的牌子首先是瑞典语,其次才是芬兰语。在那里,她买得起带澡盆和桑拿浴的公寓,而且那里的人
们在大街上讲的是瑞典语,而不是芬兰语,这让她感到很高兴。正如她本人解释的那样,她是少数民族中
的少数民族:在少年时期,她就皈依了天主教,将自己划归到不到百分之十的芬兰公民之中。她不信教的
父亲为此曾在几个礼拜的时间里气愤地不认这个女儿。


今天她来到赫尔辛基,是实施一项政府资助的项目,给年轻人教授《教理问答》。她为人爽快乐观,虽然已
经二十九岁,却像一个诚恳热心的高中生似的有着真诚的精神。她皮肤白晰,圆圆的脸,和她的哥哥有点
相似。但显而易见,和她哥哥相比,她更爱与人接触。她总是不停地按手机上的号码,给她的朋友发出信息,
约他们当天晚上见面,然后又不停地查看他们的回答。她所做的翻译生意非常成功。

当时是中午,萨拉带着我去见她的母亲,并一起吃午饭。在路上,她时不时停下来指给我看童年呆过的地
方,比如猫园和小学。“我父母是地地道道的共产主义者,我们就是在这种环境下长大的,认为苏联是最
好的。我们还去过莫斯科,”她解释说,“我记得最清楚的是那里的一家特大的玩具店,赫尔辛基所有的
玩具店都不如那家大。”她父母在她六岁时离了婚。“我刻他们对我说,爸爸 永远搬出去住了。我当时觉
得这很好。这样一来就不会再吵架了。其实他是去莫斯科长驻,于是我们慢慢习惯了他不在身边。”她说。萨
拉十岁时,决定搬到她父亲那里去住,不再和她妈妈和哥哥一起住。她父亲当时搬到了邻近的城市艾斯普。
“这并非因为我不想和妈妈一起住。我是不想和李纳斯住在一起。这样一来,除了周末,我们俩就不用吵架
了。我们俩总是吵个没完没了。随着我们渐渐地长大,我们俩吵的也少了。”

我们来到她妈妈位于一层的公寓。安娜?托沃兹见到我们后非常高兴。她的绰号叫米基。她拒绝让我遵循芬兰
人的习惯,把鞋子脱掉。“别傻了。我这地方本来就脏得一塌糊涂。不脱鞋子也无所谓。”她个子不高,黑头
发,反应敏感,非常机智。我们刚刚到达,电话铃就响了。一个地产商想让我去年看一个空着的公寓,这样
我就可以将它描绘给米基在美国的儿子,并把房子的所有材料亲自交给他,因为李纳斯有可能要买下这个
房子,作为在赫尔辛基的临时住所。于是我们进入了那幢庞大的公寓楼。那个房地产商长得怪怪的,有点像
《美国美人》影片中的一个人物。他让我们在观看房子之前,先在鞋子上套一个蓝色布鞋套。过了一会儿,房
地产商自鸣得意地说:“你们瞧这栋房子,要是你们有不希望被太阳损坏的古董的话,这里是最理想不过
的了。”米基狡黠地朝我瞟了一眼,然后不无嘲讽地说:“哦,你说话真风趣,干吗不直说这个房子没有

阳光?”


37


Just For Fun by Linus Torvalds

我们又回到了她不大的厨房。米基坐在一个长方形的餐桌旁,餐桌上铺着一张五颜六色的桌面,米基将咖
啡倒入一个非常大的杯子里。她的公寓和她前夫的一样,到处都是书籍和民间艺术品。挂着的窗帘是黑白相
间的。这个公寓本来有三个卧室和一个厨房。她的孩子们搬出去后,米基便搬进了过去由萨拉占着的最大的
卧室。她后来把李纳斯的卧室和她从前卧室的墙壁都拆了,创造出一个巨大的带厨房的客厅。她指指一个空
着的地方说:“他过去的电脑就放在那里。我想我应该在那里挂上一个牌子什么的。你觉得呢?”她一根接
一根地抽着烟,讲起话来滔滔不绝,而且英语说得很漂亮,说话时几乎没有什么停顿。“李纳斯可不是你
在大街上遇到的那种笨孩子”,她说。在她卧室的墙上挂着一面巨大的苏联国旗。那是乔科在一次国际跳台
滑雪比赛中买的,作为礼物送给了李纳斯。李纳斯把它放在一个抽屉里,一放就是好几年,但米基把它挂
在了她的床头上。


米基拿出了一个相册,里面有一些全家的照片。有一张是李纳斯两三岁时,赤身裸体地站在海滩上。还有一
张也是他,也是那个年龄,在月光下瞎跑着,地点是赫尔辛基附近的一所著名的城堡。另一张是他少年时
代,看上去又瘦又笨。还有一张是米基,参加她父亲的六十岁大寿。她指着她的姐姐和哥哥说:“她是个心
理学家,在纽约。他是个核物理学家。而我,是我们家的败家子。对不对?可我是第一个抱孙子的。”她说完
又点起一根烟。


我们去一家叫张伯伦的餐厅吃中饭。萨拉又查看她的手机,米基要了几种不同的咖啡。米基回忆说,她和尼
基曾争论过是否要强迫李纳斯放弃橡皮奶头。他们争论的方式很有意思:相互写纸条,然后把纸条放在茶
几上。她们还谈起了李纳斯的记忆力非常之差,常常记不住别人的相貌。萨拉说:“要是你和他一起看电影,
主人公本来穿一件红色衬衫,但后来换了件黄色的,他就会问:‘这人是谁?’”他们全家还骑自行车去
瑞典野营度假,晚上就睡在摆渡船上。第一天萨拉的自行车就被人偷走了,于是不得不花钱又买了一辆新
的。他们的帐篷就搭在一个悬崖上。母女俩去游泳和钓鱼,李纳斯就一个人呆在帐篷里读了一整天的书。后
来来了一场暴风雨,一直睡在帐篷里的李纳斯对突如其来的气候变化竟全然不知,但正是因为他在帐篷里,
才没使帐篷被风吹到波罗的海里去。


米基回忆起李纳斯整天躲在他的房间里玩电脑的岁月时,不禁大笑起来。“尼基常对我说:‘把他踢出去,
让他去找个工作。’但李纳斯对我不是什么负担。他的要求不多,他所要求的一切就是他的电脑。那是他的
事情,他的王国,他有权那样做。我对他所作的事情一无所
知。”


如今她和其他人一样,对她儿子的活动非常熟悉。各种媒体不断地寻找米基和她的家人搜集材料。有一些问
题他们都转给了李纳斯,但他告诉他妈妈、爸爸和妹妹运用他们自己的判断力回答那些问题。可每当他们写
好回答后,一般又都寄给李纳斯,在交给记者之前都希望得到他的同意。


几个月前,我曾给米基发过电子邮件,请求她写点关于李纳斯童年生活的东西,米基的回信非常长,而且
写得非常用心。她文章题目是“从一个电脑迷中培养出李纳斯”。在文章中,她描述了对她蹒跚学步儿子的
早期观察,说在他身上看到了她父亲和她哥哥身上所具有的对科学执着的迹象。


“当一个问题出现并始终困扰一个人时,你就会看到他的眼睛变得发直,他再也听不到你在说什么,也不
回答你简单的问题,而是完全陷入眼前的问题之中,在解决方案的过程中废寝忘食,而且从不放弃。当然,
他在日常生活中会被琐事打断,但事后还会继续单枪匹马地思索,这时你便知道他是什么样的人了。”


她还写了李纳斯和萨拉这两个兄妹之间的争执和不可调和的不一致(比如,萨拉:“我不喜欢蘑菇、猪肝


38


Just For Fun by Linus Torvalds

之类的味道。”李纳斯:“你必须喜欢。”)他俩偶尔也会流露出尊重对方的态度。“李纳斯在很小的时候,
有一次对我袒露出对他妹妹的佩服。他那时大概是五岁或七岁,突然严肃地对我说:‘你瞧,我脑子里从
来没有新的思想,我想的事都是别人先想出来的,我再把它们重新组织起来。但萨拉想的事都是别人从没
有想过的。’”


“这些回忆让我觉得,我至今仍认为他没有什么 ‘特殊的’才华,肯定没有在 ‘计算机 ’方面的才华
--假
如他没有这方面的才华,断然会把精力放在其他方面。在某一天或某个年代,他就会集中于应付另一个不
同的挑战。我想他会的(我的意思是说,我希望他不要永远陷在Linux软件上)。因为我认为他的动力并非
是‘计算机’,也决不是名声和财富,而是诚实的好奇心和征服所面临的困难的愿望,以及用最好的办法
去克服困难。因为事情就是如此,他决不会后退。

“我想我已经回答了李纳斯是一个什么的孩子的问题 --不错,他是非常好养的。他惟一需要的就是一个挑
战,剩下来的事情就由他自己去解决了。就像我和萨拉过去常说的,只要给他一间斗室,里面放上一台电
脑,再给他一些面条吃,他就会觉得无比幸福。

“除了……自他打小起我就一直揪着心:照他这样怎么可能找到一个像样的女孩?我只得再次求助于父母
们屡试不爽的办法--祈祷。你们瞧,还真灵验了!他是在大学教书时遇到塔芙的,她让他在几天之内忘记
了他的猫和他的电脑,这毋庸讳言是上天的胜利,正如其一贯获胜那样。

“我唯一的希望是名声不要让他分心太多。他的出名并没有改变他,但他变得温和多了,人们接近他时他
也愿意和别人说话了。拒绝别人也让他感到比较为难了。但我想让他改变的与其说是所有媒体的喧嚣,还不
如说主要是由于他成为了一个丈夫和一名父亲。”

显而易见,母亲和女儿都对媒体的喧嚣了如指掌。Transmeta公司郑重宣布他们的决定的第二天,我们在吃
中午饭时,米基就问萨拉:“今天的报纸上有什么消息吗?”

当天晚上,在她去上班的路上,她让出租汽车司机在我住在旅馆门口停下,她送来了一只松木儿童椅子,
让我亲自交给帕特里夏。同时还有一张一处公寓的楼层平面图。

下面我谈谈第一次见识李纳斯那出色发明的情景。

记得那是
1992年上半年的一天。我骑着自行车,随便溜达到了李纳斯乱七八糟的家里。和往常一样,我一
边看着音乐电视节目,一边询问李纳斯有关他那操作系统的发展状况。要是平常,他会咕哝一些毫无意义
的东西。这次,他却径直领着我穿过脏乱的厨房,来到他那一团糟的房间里的电脑旁。

李纳斯将用户名和密码输入了电脑,接着出现的是
command prompt命令提显符。他展示了命令处理程序
(command interpreter)的一些基本功能--但是没什么特别的。稍许,他回过头,脸上带着李纳斯式的微笑,
问道:“看起来像
DOS,是吗?”

我点点头。我一点也不吃惊,因为那看起来真的像
DOS--没什么新意,真的。我真该知道,如果不是有什么
特别的话,李纳斯绝不会那么笑。他转向电脑,又敲了几个功能键
--出现了另一个登录屏,一个崭新的登
录屏和崭新的命令提显符。李纳斯给我看了四个不同的提显符,告诉我这四个命令提显符可由四名不同的
用户使用。

39


Just For Fun by Linus Torvalds

就在那时,我知道李纳斯创造了一种奇妙的东西。毫无疑问。
乔科。沃鲁马吉


“对我而言,那意味着电话一直占线,没有人能给我们打电话……后来,明信片开始从四面八方寄来。我
想就是在那时,我意识到现实世界的人们确实在使用他所创造的东西。”
                              萨拉。托沃兹?

第三章编程的美妙

1、开始编程

我真不知道该如何阐释自己对编程的狂热,但我可以试试。

对于任何编程的人来说,编程是世界上最有趣的事。它比下棋之类的游戏更有乐趣得多,因
为它可以由你自己来制订游戏规则。而你制定什么样的规则,也就会导出与此规则相符合的
结果。

然而,对于编程外行的人来说,它却似乎是世上最枯燥的事。

编程给人带来的最初兴奋的原因有部分是显而易见的,那就是:通过编程你可以支配一台
计算机,你叫计算机做什么,它就做什么,永远准确无误,而且毫无怨言。

这本身就很有意思。

但是计算机在一开始让你入迷的盲从性,显然不得它成为招人喜爱的伙伴。事实上,这种特
性很快就让人厌烦了。真正使编程令人欲罢不能的是:你能让电脑做你想做的事,但是你还
必须想出怎样做到的办法。

我个人认为,计算机科学和物理科学有很多相似之处。两门学科都是在一个相当基础的层面
上探讨一个体系是怎样运行的。当然,区别在于,在物理学中,你探究的是一个已经存在的
客观世界的构成。而在计算机科学中,你却是在创造一个前所未有的体系。

在电脑世界中,你就是创世者,你对所发生的一切拥有最终的控制。如果你功力深厚,你可
以是上帝——在一个较小的层面上。

我这么说恐怕要得罪地球上近一半的人口了。但是的确如此。你开始创造自己的世界,而唯


40


Just For Fun by Linus Torvalds

一限制你的就是机器的性能,以及——在今天尤其如此——你自己的能力了。

想象一下建在树上的小屋的情形。

你可以建筑一个这样的房子,有一个活板门,既稳固又实用。但是每个人都可以看出一个仅
仅以坚固实用为目的的树上小屋和一个巧妙地利用树本身特点的美妙小屋之间的差异。这是
一个将艺术和工程融为一体的活计。编程与造树上小屋有相似之外,这是它之所以被看成是
一项既有魅力同时又有实际贡献的活动的原因之一。在编程中,实用的考虑往往被置于有意
思、美观伶俐或有震撼力的考虑之后。

编程是对创造的训练。

探究计算机工作原理的过程,是吸引我走进编程世界的最初原因。在这其中获得的最大的乐
趣在于,我认识到了计算机科学与数学的类似:你必须从该体系自身的规则出发,推演出
整个世界,在物理科学中,你被客观规律所束缚。但是在数学和编程中,只要能合乎逻辑地
推演,就可以成立。思考数学问题,不会受到客观世界的逻辑的限制,数学只是逻辑自洽的
符号体系。正如任何一名数学家都明白的,人完全可以建构出一套数学等式,以证明三加三
等于二。事实上,你想有什么样的体系就可以什么样的体系。但是,随着复杂程度的提高,
你必须多加小心,不要弄出什么与你创造的体系不一致的东西。

好的体系容不得任何错误。编程也与数学一样是这么回事儿。

人们对电脑如此着迷的原因之一,就是能从中获得自己创造一个新世界的体验,并贪图到
它到底能够成为什么样子。在数学中,人们往往按照客观事物的可能性进行思想实验。比如,
说到几何时,大部分人想的是与我们的经验相符合的欧几里得几何学。但是电脑却可以帮助
人们形象化不同的几何,并不仅仅是欧几里得几何学。在电脑的帮助下,人们可以形象化这
些虚构的世界,看到那些世界到底是什么样子。还记得
Mandelbrot set吗——基于 Benoit
Mandelbrot等式的fractal images。要不是电脑,纯粹的数学世界绝不能这样形象地展示出来。

Mandelbrot就是人为地制定了一些本不存在的与现实没有一点关系的世界规则,却创造出
了的图案。通过编程和电脑,你能够构筑一个新世界,有时其设计会是非常美妙的。

但是在大部分时间中你却不能欣赏自己创造的美妙世界。你只不过是在编写执行某一任务的
程序。这时你就不是在创造一个新世界,而是在电脑世界中解决一个具体的问题。问题通过
将思考结果应用到问题中而得到解决。而能够坐下来,盯着电脑屏幕,将一个问题彻头彻尾
地贯穿思考,就需要某种特定的人。

比如,需要像我这种书呆子气十足的人。

操作系统是计算机的所有功能的基础。而创造一个操作系统则是最终的挑战。

创造操作系统,就是去创造一个所有应用程序赖以运行的基础环境——从根本上来说,就
是在制定规则:什么可以接受,什么可以做,什么不可以做。事实上,所有的程序都是在制
定规则,只不过操作系统是在制定最根本的规则。

41


Just For Fun by Linus Torvalds

创造操作系统就像在为你创造的这片土地制订宪法,而其他在电脑上运行的程序则是为宪
法所允许的普通法律。

有时,这些法律根本讲不能,但这正是你要面对的问题。你需要找到解决办法,并能够意识
到自己以正确的方法找到了正确的答案。

还记得那些在课上总能答对问题的同学吗?他们的答案比别人来得快,他们能这样是因为
他们没有刻意去追求。他们不在乎他们应该怎样来答题。他们只不过找到了合理的考虑问题
的方法。人们一听到正确答案,一切听起来就都是那么回事了。

在电脑上也是这样。你可以鲁莽、生硬地行事,愚蠢地死死纠住问题不放,直到问题不再成
为问题。也可以通过找到正确的方法,使问题突然消失。你可以从不同的角度看问题。直到灵
光突现地认识到:问题之所以成为问题只在于你的方法错了。

也许能够证明这一点的最佳例子不是来源于计算机科学,而是数学。故事发生在十七世纪,
日后将成为伟大的数学家的高斯还在上中学。一天,老师厌烦了授课,就让学生们计算从1
到100的数字的和。他原以为学生们要花一整天来计算这道题。没想到初展才华的数学家仅
花了五分钟就得出了正确答案:5050。他解答这个问题的方法不是真的把所有这些数字一一
加起来,这样做既麻烦又愚蠢。他发现1加100等于101,2加99也等于101,然后3加98还

101,直到 50加 51等于 101。不要几秒种,他就注意到一共是
50对 101,所以答案是
5050。

也许这故事是虚构的,但它想说明的道理却很清楚:一个伟大的数学家不会采用平庸而繁
琐的方法,因为他能看到隐藏在问题背后的真正内涵,并应用这一理解去找到更为简便的
方法。

在计算机科学中也绝对如此。

没错,你能写一个程序来求出总数。这对于今天的电脑来说不过小事一桩。但是一个伟大的
编程者能凭借其聪明的头脑就知道答案是什么。他知道怎样写出漂亮的程序,知道怎样采用
一种全新的但最终会被证明是正确的方法。

不过还是很难说清楚,闭门冥思苦想地要找到解决某个问题的漂亮答案,为什么竟然有如
此巨大的魅力?但是,你要是曾经有过找到更好方法的经历,你就会明白,这简直是无与
伦比的感觉。

2、长腿的终端仿真器

我的终端仿真器(terminal emulator)长了腿。我经常用它登录到学校的电脑上,查阅电子

42


Just For Fun by Linus Torvalds

邮件和参加MINIX讨论组。但是问题是,我还想下载和上传东西。也就是说,我必须能向磁
盘里保存东西。为此,我的终端仿真器必须装个磁盘驱动。还需要一个文件系统驱动,这样
才能查看磁盘里的东西,将我下载的内容保存成文件。

这是我在发明
Linux的过程中差点半途而废的一步。我当时觉得这太麻烦,也不值得。但是
除此之外我也没什么可做的。那年春天我在上课,课程很简单,无需费太多的心思。当时我
唯一的课外活动是每周三晚上参加同学聚会。我那时是一个社会“死物”,于是那聚会就成
为我除了编程和学习之外唯一一个可以干点别的事情的场合。要不是那聚会,我可以说是彻
底与世隔绝了。同学聚会是我接触社会生活的仅有的地方,我几乎是每次不落地参加。该聚
会对我是如此重要,以至于我有时会因为想着将要参加它而失眠,因为一直担着心不要因
为缺乏社交风度、或由于自己丑陋的大鼻子、或明显缺少个女伴而出丑。这自然都是些典型的
低级趣味。我之所以说这些,是因为要表明,当时我真的没有什么别的有意义的事情可做。
而搞出驱动程序的工作却很有意思。所以我对自己说,我要干下去。

于是,我写了一个磁盘驱动程序。因为我想把文件保存在我的 MINIX文件系统中,也因为
MINIX文件系统本身整理得很好,于是我让自己的文件系统可以和MINIX文件系统兼容。
这样,我就可以在 MINIX系统下阅读我建立的文件并将它们存入同一张磁盘,以便
MINIX系统也可以通过我的终端仿真器阅读到我建立的文件。

这花费了我大量的精力:编程 ——睡觉——编程 ——睡觉——编程 ——吃饭(饼干)——
编程——睡觉——编程——洗澡(冲冲了事)——编程。随着工作的进展,这个项目很明显
正在成长为一个操作系统。所以我转变了看法,不再把它看成一个终端仿真器,而是一个操
作系统。这个转变出现在我马拉松似的编程过程中的哪个时间段,是在白天还是晚上,我已
经想不起来了。也许在这一刻之前我还穿着破旧的睡袍奋力敲击着键盘,在为终端仿真器更
多的功能;而转瞬之前我拥有的功能是如此之多,以至于整个体系已经变成了一个。

我把它称之为我的 “
gnu-emac终端仿真程序
”(
gnu-emac of ternimal emulation
programs)。gnu-emac终端仿真程序开始是一个编辑程序,但创造它的人又为它增加了一系
列功能。设计者本想让它成为一个可以用程序控制的编辑程序,但是其程序可控性的特点很
快使一切都黯然失色,它成为了一个从地狱中冒出来的编辑程序。它除了厨房水池子外几乎
无所不包,这就是为什么这个编辑程序指令的图标有时竟是一个厨房水池。这个编辑程序的
一大特点就是,其设计过程比任何其他编辑器都更复杂。

我的终端仿真器也是如此。它在不断地扩张。

3、寻求网上帮助

来自:torvalds@klaava.Helsinki.Fi(李纳斯?托沃兹)
讨论组:comp.os.minix
主题:Gcc-1.40和一个有关
POSIX的问题

43


Just For Fun by Linus Torvalds

信息名称:1991 Jul 3, 100050.9886@klaava.Helsinki.Fi
日期:1991年
7月
3日,格林威治时间
10:00:50

各位网友好!

由于我现在正在 MINIX系统下做一个项目,对 POSIX标准很感兴趣。有谁能向我提供一个(最好)是机
器可读形式的最新的POSIX规则?能有FTP地址就更好了。

好吧,这就是一个芬兰小子希望检验一下自己的计算机技能限度的最早的公开证据。

POSIX标准是一个可以适用于数以百计的 UNIX系统呼叫中的任意一个的一套冗长规则,
计算机要执行任务(从读、写、开机和关机开始)就需要这个标准。POSIX则是指一个UNIX
的标准体系,或一个由来自不同公司的代表所组成的一个组织,希望按照一个共同的标准
进行运作。对于程序员开发的在该操作系统下的新应用软件或开发应用软件的新版本而言,
标准是极其重要的。从 POSIX这样的系统呼叫(system call),尤其是重要的呼叫(call)
中,我可以获得一个操作系统应该具有哪些功能的一个单子;然后我就可以通过自己的方
式在自己的系统中实现每一个功能。通过编写出这些标准,我的系统软件的源代码将可以被
别人使用,以开发新的应用软件。

当时我并不知道我本可以直接从 POSIX公司买到这些规则的软盘,但这无所谓。哪怕我能
买得起,什么东西运到芬兰,往往会需要很长的时间。我不愿等上那么久,因此我四处搜求
一个能从FTP地址上直接下载的版本。

没有人给我提供能找到POSI标准的来源。于是我开始了计划
B。

我从学校找到运行sun器(sun server)的sun微系统版的 UNIX手册。该手册中有一个完全可
以凑合使用的系统呼叫的基本版本。从用户手册中能看出系统呼叫的主要功能,以及为完成
这些功能所需要完成的步骤。但是,从中看不出具体的方法,而只是标明了最终的结果。于
是我便着手从安德鲁?塔南鲍姆的书中和别的材料中收集一些系统呼叫。最终有人给我寄来
了那几卷厚厚的POSIX标准。

不过我发的那个邮件并没有石沉大海。任何一个有相应知识的人 (只有具备相应知识的人才
会上 MINIX的网站)都能看出我的计划是要开发一个操作系统,否则,我会需要 POSIX规
则呢?我的邮件引起了赫尔辛基工学院(我若不是对研究理论这么感兴趣,可能会在这儿求
学)一个助教阿里?莱姆克(Ari Lemke)的好奇。阿里善意地给我回信说,他愿意为我在他们学
校的FTP地址上建一个子目录,这样到时我可以把自己的操作系统发布上去,让感兴趣的
人们下载。

4、Linux

阿里?莱姆克一定是一个相当乐观的人。在我能拿出什么可以发布的东西之前,他就为我建


44


Just For Fun by Linus Torvalds

立了一个子目录:ftp.funel.fi。我有了密码,一切都准备就绪,就等着我去登录然后上传内
容了。但是我要再花上四个月才能找到一点我愿与世人分离的东西,或者至少与阿里或几个
与我保持邮件往来的热衷于操作系统的狂热分子分离的东西。

我最初的目录是想开发出一个最终可以取代MINIX的操作系统。

这个系统不必比
MINIX能干,但必须能胜任我最喜欢用 MINIX做的事,以及其他我想做
的事。比如,MINIX的终端仿真不仅太不方便,而且也不能进行任务控制 ——即把暂不用
的程序放入背景中,同时内存管理也太简化。顺便说一下,它还是以苹果的操作系统 (Mac
OS)而不是以
DOS为支持的。

开发操作系统就是搞明白系统呼叫应该做什么,然后以你自己的方式编出能使系统呼叫得
以执行的程序。总有来说,共有几百个系统呼叫。有些是多功能的,其余的则很单一。有些更
基本的系统呼叫确实是十分复杂的,并需要有大量的基础作为支持。比如,为完成“写”和
“读”这两种系统呼叫,你就必须建立一个磁盘驱动程序,以便能够在磁盘里读或写东西。
又比如“打开文件”的系统呼叫,你就必须创建一整套文件系统层,以便分析文件名和在
磁盘上查找文件。要编写 “找开文件”的系统呼叫,更需要几个月的工作。但这个程序一旦
编写出来,用于别的功能的程序都可以借鉴。

早期的创建工作就是这样。我不但从Sun服务器的操作系统手册中查找标准,也从其他书中
查到可用的标准,挑出一个一个的系统呼叫,然后为它们再编出可行的软件。

这工作很容易让人感到灰心丧气。

原因是:表面上一切如故,你看不到任何进展。你可以做几个试验性的程序,检验自己刚刚
加上的东西是否可行。但这并不真的有什么用。在有的阶段你不得不放弃刚才的想法,那一
长串的系统呼叫都白干了。一个真正的程序在运行之前,必须已经接近完成。你必须首先运
行的程序是外壳(shell)程序,而在有这个外壳程序之前,要运行什么很难的。而且,这个外
壳程序包括了很多你所需的系统呼叫。它运行起来之后,你才会从中找到一长串你尚需完成
的功能。

在UNIX中,外壳程序是一切程序之母。它的作用是引发以后的一系列二进制语言程序
(二
进制程序是以计算机可识别的1和0为符号编写的程序。以机器语言编程,就是将二进制的
源代码组合起来),这个外壳程序使你首先能登录(当然在真正的 UNIX系统中,你运行的
第一个程序传统上被称为 init,而 init的确需要很多基础的支持才能运行。它是一种对正在
运行着的程序的控制工具。当没有任何程序运行时,init就没有用了)。

因此,我做的第一件事不是创建
init,而是建一个外壳程序。我执行了约二十五个系统呼叫,
正如我所说,这也是我要运行的第一个真正的程序。这个外壳程序不是我自己编的。我下载
了一个叫
Borne Shell的外壳程序。它是
UNIX的初始外壳程序之一,可以从互联网上免费下
载,名字来源于一个难听的双关语。编写该外壳程序的家伙名叫波恩,所以这个程序就叫做
“Borne Again Shell”,或一般被称为BASH。

当你试着从磁盘运行或导入一个真实的程序时,一般都会有 “臭虫
”(bug)出现在磁盘驱动

45


Just For Fun by Linus Torvalds

程序或导引程序中,因为程序往往会不理解它读到的东西,于是它就会在屏幕上显示出相
关的信息。这很重要,你可以从中知道哪儿出了毛病。

于是,我就到了这样一个阶段:我试图导引外壳程序,屏幕上则显示出外壳程序中每一个
我尚未能执行的系统呼叫。我导入并运行外壳程序,屏幕上则出现类似“系统呼叫
517没有
执行”这样的信息。我日日夜夜盯着屏幕上显示出来的系统呼叫,试着发现我在哪一条上面
出了错。这比拿到一个系统呼叫的单子,然后一一使他们可以被执行要有意思多了。人们需
要看到事情的进展。

到了八月底或九月初的时候,我的外壳程序终于可以工作了。过了这一关,后面的任务就轻
松多了。

这可是一件大事。

我的外壳程序可以运行后,我马上开始着手其他几个程序,比如拷贝程序和列表程序,这
些都比外壳程序简单得多。你所需的一发,外壳程序早就具备好了,所以一旦外壳程序完成,
就好像是从0飞跃到100一样,因为一切都已就绪。这时,我已经拥有了一切必要的条件,
感觉就像上帝创世纪那样,执掌一切地说:“让那里有光”,那里就真的有了光。在此之前,
的确是一无所有。

是的,我深感满意。

这种满意很重要,因为那个夏天我除了伏在电脑面前,其他什么都没做。这么说一点也不夸
张。芬兰四月到八月的日子是一年中最美好的时光。人们到布满小岛的海上航船,去海滩上
晒日光浴,到夏日小木屋中消闲。但是我却在没日没夜地工作,不知哪一天是周末,哪一天
是工作日。学生的黑色窗帘遮蔽了几乎昼夜灿烂的阳光,也遮蔽了整修世界。有些天——或
夜晚?——我会从床上爬起来后直接坐到离床仅几英尺远的电脑旁。

爸爸显然在不断催促妈妈让我在暑假找份工作,但妈妈却不在乎:我并没有打搅她。萨拉会
因为我有时上网使电话战线而有点恼火。她也许会写些毫不客气的话。毫不夸张地说,我和
电脑之外的世界几乎没有任何联系。

当然,也许每周有一次,一个朋友会敲敲我的窗户,而我如果没在捣腾什么重要的编码时,
会请他进来。我们会喝杯茶,也许还会挤在窄小的厨房里看一小时的MTV。现在回想起来,
对了,有时乔科会来敲我的窗户,我们会出去喝点啤酒或玩司诺克台球。但是,诚实地说,
那时我的生活也就这么简单了。

而我一点儿都不感觉自己是那种面色苍白、可怜兮兮的失败者。

外壳程序成功了。这意味着,我事实上已经建立起了可行的操作系统的基础,而我自己则乐
趣无穷。

外壳程序成功之后,我开始检验其中的内装程序。接着我又编了足够的新程序,可以真正干
点什么了。我用了MINIX中所有有用的东西。当我把外壳程序移到一个我为新的操作系统所


46


Just For Fun by Linus Torvalds

建的特别区域中时,我开始把这个操作系统称为“Linux”。

坦率地说,我一开始并不想把它以
Linux的名称发布出去,因为那显得我太自我中心了。那
么,我为最终发布起的名字是什么呢?Freax (Freaks的变形,该词为“异想天开 ”之意 ——
译注。) 事实上,在一些早期完成的文件中,即那些说明如何汇编源代码的文件中,有将近
半年的时间我一直使用Freax这个名称来指代这个操作系统。但这其实是无所谓的,因为当
时还没有任何人知道它,所以它其实并不需要什么名字。

5、开放源代码

来自:李纳斯托沃兹torvalds@klaava.Helsinki.Fi (李纳斯?托沃兹)
新闻组:comp.os.MINIX
题目:你在MINIX中最想看到什么?
总结:关于我的新操作系统的小型民意调查。
信息编号:1991年
8月
25,9541@klaava.Helsinki.Fi

嗨,所有使用MINIX的人们,大家好!

我在编一个 (免费的)用于386(486) AT clones的操作系统 (只是一个爱好,不会成为一个像
GNU那样大型的
专业软件)。我从四月起就在酝酿,现在已准备就绪。我想听一听人们对MINIX有哪些欣赏或不满之处,因
为我的操作系统和它有些相象(尤其是文件系统的物理排列方式)。

我目前已经装上了 bash (1.08)和gcc (1.40),看来一切进展顺利,估计几个月内我就会得出一些实用的东西。
我想知道大多数人在这方面有什么要求。任何建议都欢迎,但我可不保证一定会采纳。

李纳斯(torvalds@klaava.Helsinki.Fi)

附:对了,它不受任何 MINIX源码的影响,并有一个多线程 FS。记住,它不能安装(比如使用 386任务转
换文件等等),也许永远不会支持除了AT硬盘之外的东西。情况就是这样。

使用MINIX人群中最坚定的操作系统的狂热者看到了火花。我没有收到多少有关
MINIX特
点的建议,但却有许多别的问题。

>多告诉我们一点!它需要MMU吗?
回答: 是的。
>在多大程度上使用C语言?在装截中会有什么困难?不会有人相信你的不可“半截性”,比如说我就想
把它装截到我的Amiga软件上。
回答:它大部分使用 C语言,但大部分人不会把我写的程序称作 C语言。它使用了我能想到并找到的
386的特征,我也想通过它充分了解386。我的一些
C文件几乎和C语言一样是组合起来的。

如上所述,它也使用MMU,用于分页和分类(还不能存进软盘里)。正是分类使它成为一个

47


Just For Fun by Linus Torvalds

真正的386的依赖者(每项任务都有一个64mb的编码和数据分类文件。

甚至有几个人提出愿意做试用版的试验者。

最后,把它发布出去并不需要太大的决心。我一直习惯与人交流程序,所以要做的唯一真正
决定就是,我敢于向人们展示这一系统软件的最佳时机是何时,才不会使自己感到不自在,
或更确切地说,什么时候发布才使我将来不至于为此感到羞愧。

我最终想实现的是有一个编译器和一个能在 Linux内部编程的真正的系统环境,而不必再
用MINIX。但是当
gnu程序可以运行时,我骄傲极了,愿意让整个世界都看到它。同时,我
也想听到人们的反响。

外壳程序能运行时,我已为操作系统初步编了几个程序。其实还不能做什么,但你能看出和
UNIX很相似。事实上,它运行起来像一个有点残疾的UNIX。

所以我决定将其发布出去。但我不会公开地告诉任何人,而是通过私人邮件告诉几个人——
也许总共只有五到十个人吧——告诉他们我已将其上传到FTP地址上。其中包括阿里?莱姆
克,布鲁斯?伊文斯,以及其他几个人。我还上传了 Linux的源代码和几个用于初始运行的
小程序。我告诉人们要运行这个系统应该怎样做。人们还是
MINIX386版本 ——还必须有
GCC编译器,事实上是我自己版本的GCC。所以我把这些也传了上去。

我们有了一个给发布的内容编号的协议。它其实只有心理意义。如果我认为自己的东西已经
完善,我愿意将其定为1.0版本,而在此之前,我给出的编号就表示出距离
1.0版本还有多
远的距离。所以,我将上传发布的那个版本的操作系统定为 0.01版,让大家知道它离最后
完善还有很大的距离。

对了,我想起了上传那天的日期:1991年
9月
17日。

我想只有一两个人看了我的作品。因为他们必须先费事地安装一个特殊的编译器,准备一个
空间以便导入并汇编我的指令,然后却只能运行一个外壳程序。

基本上,运行外壳程序就是这个版本所能做的一切。它也可以把源文件打印出来,大概有一
万行——如果字体小一点的话,大概不到一百页纸(而现在大概要有一千万行了)。

我发布这一操作系统的主要原因之一,是要证明我此前并非在说大话,而是我确实有所作
为。在互联网上,说话没有太多责任。不管你做什么,不管是操作系统还是性,太多的人在
这个计算机的虚假空间里弄虚作假。所以在告诉了那么多人你在发明一个操作系统之后,能
够这样说真好:

“瞧,我真的做出了点什么。我没有在骗你们。这就是我所做的……”


48


Just For Fun by Linus Torvalds

6、Linux有了用户

哦,阿里?莱姆克,是他为我把这个系统上载到FTP地址上铺平了道路。

他极不喜欢Freax这个名字。倒喜欢我当时正在使用的另一个名字——Linux,并把我的邮
件路径命名为pub OS/Linux。我承认我并没有太坚持。但这一切都是他搞的。所以我既可以不
惭愧地说自己不是那么以个人为中心,也不得不承认自己并非完全没有自我意识。并且我认
为,这是个不错的名字。

如上所述,我的操作系统并非很有用。比如,如果储存太多的东西,或仅仅是因为不小心,
系统就会马上崩溃。而哪怕你并非不小心,如果让它运行时间稍长一点,也会崩溃。但是在
那个阶段,它并不是给人运行的,而是让人看的。对了,是让人仰慕的。

所以它只是为给少数几个热衷于开发新的操作系统的人分离的。他们都是非常迷恋技术的人,
甚至是技术迷当中的特殊兴趣小组。

他们的反应无一例外是积极的,但是这是一种“它要是能这样或那样就更好了”的肯定态
度。或说:“看起来倒是挺酷,但是在我的电脑上根本就转不起来。”

我记得一个人在邮件中写道,他真的很喜欢我的操作系统,并用了至少一大段文字来描绘
它的好处。接着他说我的系统吃掉了他的硬盘,而我的磁盘驱动程序则是“又娇气又脆弱”
之类的。他丢失了他先前所有的文件,但他还是对我的操作系统持积极支持的态度。读这样
的邮件很令人感动。事实上是一个软件“臭虫”毁了他的文件系统。

我的就是这种反应。我修补了几个程序上的瑕疵,包括那个当内存用完时就会死机的漏洞,
而且还取得了一个,经
GCC编译器装载到操作系统上,这样我就可以编写小的程序了。这
也意味着使用者在运行这个操作系统之前不必先导入我的GCC编译器了。

你是否渴望回到那样的时代,当男人像男子汉并且能自己编写驱动程序?
——Linux0.02版本的上载宣言

十月初我发布了0.02版,包括了几个对瑕疵做的补丁程序和一些增加的新程序。十一月我
又发布了0.03版。

我本来可能会在1991年底之前就洗手不干了。我已经做了很多自认为有意思的事。并非一切
都绝对圆满,但在软件世界中,一旦你已解决了最根本的问题,兴趣就容易很快地消失。我
也是那样。解决软件中存在的小问题并不是什么吸引人的工作。但接下来发生了两件让我继
续下去的事,第一:由于失误,我破坏了我的 MINIX分区;第二,人们不停地传给我反馈
的意见。

那时,我在导入
Linux时仍要把
MINIX作为主要的开发环境。我在Linux系统下做的大部分
事只是这我写的终端仿真器从学校的电脑上读邮件和新闻。

49


Just For Fun by Linus Torvalds

学校的电脑总是很难登录,所以我编了个可以自动拨号的程序。但是在十二月时,我本想自
动拨
devtty1——这是系列电话线,但却错误地拨成了 devhda1,既硬盘分区,结果是我无
意中覆盖了保存的MINIX中最重要东西的空间。是的,这也就意味着我不能再进入
MINIX
的环境了。

那就是我要做出抉择的一刻。

我可以重新装入
MINIX系统,或者也可以将错就错,自认
Linux已是足够的好,以至不再
需要MINIX了。我将通过在 Linux下编程来编译
Linux,而只要我觉得需要 MINIX中好的
功能,我就把这些
MINIX的优点编到 Linux中。无疑,这是观念上重要的一步,因为你要
摆脱原有的系统环境,使新的系统真的能够自我包容。这一步十分重大,因此我将十一月底
发布的版本命名为0.10版。几个星期之后,就升级到了0.11版。

正是从那时起,开始有人使用这个系统并可以用它来做一些事了。

到那时为止,我已经修补了一系列的漏洞。但没有人向我提出新的建议。我记得为了满足更
多存储的需要,我曾出过门,并将机器的内存从4兆升级到8兆。我还出去买了个浮点协同
处理器(floating point co-processor),因为人们开始问我 Linux是否能支持他们的浮点协同处
理器。

这个附加硬件使我的电脑能执行浮点运算(floating point math)。

我记得是在十二月,德国的一个计算机只有 2兆内存却试图汇编Kernel的家伙,他也不能
运行GCC,因为那时的GCC需要1兆以上的内存。于是,他问我 Linux是否能用一个无需
太多内存的较小的编译器来进行汇编。尽管我并不需要这个特别的功能,但我仍决定要为这
个家伙实现这种功能。接着就出现了那个称为 page-to-disk的东西,这就意味着尽管他只有
2兆的内存,他也可以通过使用这个存储盘使他的电脑看起来宽敞一些。那是在 1991年圣
诞节前后。我记得曾在12月
23日那一天加班加点,努力使
page-to-disk运行。到了 12月
24
日,它已经可以在某种程度上运行了,但是每隔一会儿就死机。最后到 12月
25日,也就是
圣诞节那天,它终于成功了。这可以说是我为满足别人而不是为自己的需要而增加的第
一项功能。

而我也为此感到很骄傲。

Linux的用户天天都在增加,我也不断接到来自我曾向往的国度的电子邮件,包括澳大利
亚和美国。关于此事,我在祖母家的圣诞聚会上对家人只字未提。不要问我为什么,我只是
觉得没有必要和我的父母、姐妹或任何亲戚讨论这件事。他们不懂计算机。至少,我认为他们
不懂计算机。

就他们而言,我每天干的事就是把电话线连到调制解调器上。当时的赫尔辛基,电话费在夜
间可以打很多折,所以我在家的大部分工作都在深夜进行。但偶尔也会一整天地连在电话线
上。我本想另接一条电话线,但是我母亲的公寓所在的大楼十分古老,没有额外的电话线,
也不打算增加新的。那时我妹妹萨拉除了在电话上聊天之外也是无所事事,至少在我看起来

50


Just For Fun by Linus Torvalds

是这样。所以我们会偶尔为抢电话线打架。真的会打起来。她和朋友打电话时,我会强行用“
猫”拨号,她就会听到“嘀——嘀——”的声音。这自然会打断她,而她也就知道我确实、
确实要上网收电子邮件了。

我可没说过自己是世界上最好的哥哥。

Page-to-disk是一个相当庞大的程序,因为它是
MINIX没有涉及到的东西。该程序出现在

0.12版中,于1992年
1月的第一个星期发布。人们马上开始不仅仅把
Linux和MINIX相比
较,而且开始和Coherent相比。后者是由
TK开发的小型
UNIXclone。从一开始,增加pageto-
disk就使
Linux在竞争中脱颖而出。
那是
Linux起飞的开始。

突然间,人们纷纷从 MINIX转向
Linux。那时 Linux尚不能胜任
MINIX的所有工作,但是
它还是可以做人们真正需要的大部分重要的工作。而它拥有一项人们特别喜欢的功能:有了
page-to-disk,你可以运行超过你内存的巨大程序。这意味着,当超出内存之后,你可以将一
块旧的内存存到磁盘上,要记存到了哪儿,仍然使用那块内存来解决你的问题。这在 1992
年的第一个星期是一件不寻常的事。

正是那个月,Linux的用户从我知道名字并与其有邮件往来的五到十个人,增加到了成百
上千我不知是谁的人。我并不认识每一个Linux的用户,这多有意思。

7、Linux能换来金钱吗?

那时,互联网上正有一个恶作剧在盛行。

据说有个叫克雷格的可怜男孩得了癌症,正在死亡线上挣扎,而在网民中则流传着一个连
锁邮件,让人们向这个男孩邮寄明信片以表示对他的支持。实际上这是某人的一个恶作剧,
可能根本就没有克雷格这么个人,更别提什么癌症了。但是这一呼吁竟招来了上百万张明信
片。所以我半开玩笑寺要求使用Linux的人给我寄明信片,而不用给钱。这像是一个人们会
感叹“哦,上帝,又是一个要明信片的家伙!”的玩笑。在那时的个人电脑世界中,有一个有
关软件共享的牢固传统。你下载了一个程序,就应该给作者寄回十块钱左右的回报。所以我
收到了很多邮件问我是否要人们给我寄三十块钱。就是在这种情况下,我觉得必须说点什么
了。

现在回想起来,我觉得那些钱一定会很有用的。我已欠了大约五千美元的学生货款,同时每
个月要为我的电脑支付约五十美元。我另外的主要消费是比萨饼和啤酒。但是由于开发
Linux,我那时没有时间外出,最多每周出去一次。我不花钱约女孩子,把钱都花在了为我
的电脑增加硬件上。也许要是换一个人,就会向大家要钱了,哪怕是为了减轻他那日夜辛苦
劳动的单身母亲的负担呢?唉,我那时却没有想到这一点。去告我吧!

51


Just For Fun by Linus Torvalds

那时,我更想知道都有哪儿的人在使用Linux。与收到钱相比,我更喜欢收到明信片。事实
上,明信片确实在滚滚而来,从新西兰、从日本、从荷兰和美国。萨拉曾偶尔象征性地去取取
信,突然意识到那总和他争吵的哥哥竟有来自那么遥远的朋友。那是她第一次认识到,在我
总是占用电话线的时间里,我可能是在做一件会很有用的事情。那些明信片加起来足有几千
封,但它们现在早已不知去向了,一定是在我某次搬家时丢掉了。我的朋友艾温坦说,我是
他所见过的最不怀旧的人。

实际上,我不要钱还有很多原因。在最初发布
Linux的时候,我觉得自己是在沿着几个世纪
以来的科学家们和其他学术界人士的脚印在前进,而他们的成就往往建立在别人所打下的
基础上——用牛顿的话来说,我是站在巨人的肩膀上。这样做,我不仅仅是在与别人分离我
的成果,别人也将会觉得我的工作是有用的。我还想听到反响(当然,是想听到赞扬)。朝那
些可能会帮助我改进工作的反馈信息要钱是没有。我想,如果我不是长在芬兰,我的态度会
不完全不同。在芬兰,只是一个人稍微显露出一丝贪心的迹象,人们就会视之为可疑而不会
羡嫉(自从诺基亚电话公司开始赚整个世界的钱并充实了很多芬兰人的钱包之后,这一点已
经有了一些变化
)。并且,对了,如果我不是在顽固的学究祖父和共产主义立场的父亲影响
下成长起来的话,无疑我会对这件不要钱的事持不同态度。

无论如何,我不想把
Linux卖掉,我也不想失去对它的控制权。也就是说,我不想别人把它
买掉。早在九月上传每一个版本时,我就在有关复制的文件中表明了这个版权声明。根据十
九世纪的波恩公约,除非你将其出卖,你拥有自己所创造的一切东西的版权。作为版权所有
者,我开始定下了以下关于Linux的规则:

1、人们可以免费使用该操作系统,但不得将它作为商品。
2、 对其所作的改动和改进,必须以源代码的形式将其公开(而不是二进制,这是不公开的。)
3、如果不同意以上规定,则无权对它进行复制或从事任何行为。

你不妨自己设想一下。你为这个程序倾注了六个月的心血,你希望它是有用的,并且自己也
能从中有所收获,但你肯定不想让它白白被人占去便宜。我想让大家都能够看到它和使用它,
同时也可以随意对其进行改动和改进。但是,我也希望能确保我自己可以及时了解他们做过
哪些改动。我希望自己有权使用源程序,这样,假如别人做了什么改进,我也可以利用它。
我认为,要使
Linux发展成最完美的技术就必须保持它的纯洁性。如果有铜臭渗透进来,事
情就要变黑暗了。所以,如果不让钱的问题掺和进来,就不会有贪欲的参与。

尽管我没兴趣拿 Linux去赚钱,但别的人却不这么认为,他们在给别人一份已经下载到软
盘上的拷贝时都要索取回报。到了二月份,参加UNIX用户会议的人,几乎人人手上都有一
张装有Linux系统的软盘。这些人也问我,他们能不能把
Linux作为商品出售,比如说,只
要五块钱,为的是收回软盘和时间上的成本。这听起来还有点道理,但问题在于,这样做就
会侵犯了我的版权。

显然,我已经到了反思“Linux是非卖品”这一立场的时候了。

那时, Linux已经在网上引发了很多讨论,这使得我很自信,再没有人能够窃取我的劳动
成果了——而这曾经是我最大的担忧。至少,假如真有谁这样做了,他也难逃众人的谴责。

52


Just For Fun by Linus Torvalds

如果有人想篡夺
Linux并将其变为一个商业项目,必将会在网上掀起黑客的反对潮,会有
无数黑客似的人物大声斥责道:“嘿,那是
Linux,住手。”当然,措辞可不会如此文雅。

事情的发展已经势不可挡:世界各地的黑客们每天都在共同分享彼此提出的修改建议。

我们正在集体创造一个最好的操作系统,这种发展轨道已经不可改变。正因为如此——因为
Linux已广为人知,我才觉得把它作为商品也是可以接受的。

但是,在使我自己看起来像个慈善先生之前,还有另一个关键的因素使我做出了这一决定。
事实是,为了使
Linux有用,我曾依赖过很多在网上免费下载的工具
——我把自己放到了
巨人的肩膀上。这些免费软件中最重要的是
GCC编译器,它是理查德?斯多曼的杰作,并且
已经在公共执照协会(GPL)上注册了版权。在 GPL条款之下,钱不是问题,只要有人愿意买,
你可以卖一百万美元。但是,你必须提供软件来源。而得到或买到你的来源的人,将拥有和
你一样多的对于该程序的。这实在是很高明的一招。我认可
GPL的原则,但是和那些认为所
有的软件创新都应该在 GPL下向全世界公开的顽固的 GPL信仰者不同,我认为发明者本
人有决定如何处置自己的发明的权利。

于是,我抛弃了自己旧有的版权声明,采纳了 GPL的内容,一个斯多曼也曾经和他的律师
一道签署过的文件(因为有律师的参与,该文件被搞得洋洋洒洒有好几页)。

新的版权声明被放进了0.12版本中。但是,我记得在发布当晚我从睡梦中醒来,想到商业
利益将可能有点古怪,因为当时所涉及的商业利益真是不多。但不知怎的,我觉得自己应该
小心。我的担心之一是——现在仍然是——有人将丝毫不尊重我的版权地将
Linux掳去。我
担心,在现实中,如果有个美国人侵犯了我的版权,我无法对其提起诉讼。现在这仍是我的
担心。状告某人侵权很容易,而我的担心是,有的人会即使被起诉也继续从事这种违法行为,
除非加诸某种强制执行的法律行动他们才会停止。同时我也不断地担心,在像中国这样的地
方,企业并不承认
GPL的效力,从而也不会尊重我的版权。

事实上,这些地方的法律体系对侵犯版权的制止在当时并不得力
(中国已经签署了一系列的
国际公约,李纳斯在这里谈的是
1991年的情况——译注
),而且,为防止违法行为的投入
在这些地方被认为是不划算的。大软件公司和唱片公司曾作过努力,但是成效不大。

不过,事实减轻了我的担忧。有的人确实会暂时侵犯我的版权,但是他们往往也是那些尊重
版权、反馈改进意见、使系统功能得以提高的人。他们将是系统升级过程中的一分子。相反,
那些不尊重版权的人们则不会利用这些升级,他们的顾客也会离他们而去——我希望。

总的来说,我从两个方面看版权。比如一个每月挣五十美元的人,他可能会为一个软件花费
二百五十美元吗?如果花一点钱买非法拷贝软件,而把五个月的工资用于吃饱肚子,我一
点不觉得他不道德。这种侵权是道义上可以接受的。去追捕这种“侵权者”是不道德的,更
不要说简直就是愚蠢的。就 Linux而言,谁在乎如果只将其用于个人目的时,一个人是否真
正遵循了GPL呢?那些想藉此赚大钱的人们,才是真正不道德的,不管他们是在美国还是
非洲,也不管程度如何。

贪欲从来就不是善的。

53


Just For Fun by Linus Torvalds

8、MINIX对 Linux

引人注目并非全是好事。

我从不擅长处理对抗,但也被迫站出来为 Linux和我的尊严辩护,因为安德鲁?塔南鲍姆不
断攻击我的 Linux取代了他的 MINIX操作系统。我们都是网虫,所以论战是通过电子信件
进行的。

他只穿着件
T恤就浑身冒火,能怪谁呢?

在还没有 Linux讨论组之前,我一般都是在 MINIX讨论组上宣布有关
Linux的信息和寻找
对这个操作系统感兴趣的人。对此,安德鲁怎么会高兴呢?

所以,开始的时候,他对我入侵他的讨论组有些不快。很显然,他也很不高兴自己的操作系
统正在被一个来自芬兰雪原的新发明夺去光彩,而且看来有众多的软件设计者正在加入进
去。同时,他对应该如何创建操作系统持与我对立的观点。那时,安德鲁属于主张以微内核
的方法建立操作系统的计算机科学家阵营。他把
MINIX做成适用于微内核和 Amoeba(一种
他当时正在创建的也适用于微内核的系统)的形式。

适用于微内核的系统在八十年代晚期和九十年代早期十分盛行,而 Linux的成功威胁到了
这一运动。所以他不断地在网上帖一些难听的带攻击性的帖子。

微内核的理论依据是,操作系统是非常复杂的,所以要通过模式化来减少复杂性。微内核方
法的原则,即核心的核心,是昼减少功能。它的主要功能是传播。电脑所提供的一系列不同
的服务都是通过微内核的传播渠道实现的。因此,应尽量分割问题的空间,使其不再复杂。

我认为这种做法很愚蠢。

是的,每一个单独的部分是简单的,但是相互作用的多种功能如果放在一起就要复杂得多,
而Linux就是后者的情况。想一想自己的大脑。每一个单独的部分都很简单,但是各部分的
相互作用构成了一个复杂的系统。这是一个整体比个别更大的问题。拿一个问题来说,如果
你简单地将问题一分为二,说半个问题要容易一半,那么你就忽略了一个事实,即:你必
须要考虑到两个半个之间的联系所带来的复杂性。微内核的理论是,如果把核分为五十份,
那么每一份都只有五十分之一的复杂性。但是每个人都忽视了一个事实,即各部分之间的联
系事实上比源系统更加复杂,而且那些个别部分也不是那么简单。

这是我对微内核最重要的反驳:你想实现的简单化是错误的简单化。

开始时, Linux是一个较小的软件,而且简单得多,没有必要进行模式化。所以用Linux可


54


Just For Fun by Linus Torvalds

以比
MINIX更直截了当地做很多事。我最初发现MINIX的缺陷是,如果你同时运行五个软
件,五个软件都要读不同的文件,那么五项任务要一个一个地先后进行。换句话说,你要向
系统发出五次请求: “我可以读文件
X吗? ”文件系统主管读取的后台驻留程序先接受一
个请求,对其进行回应,然后再接受一个,再进行回应……


Linux系统只有一个核,在这个系统之下,五个不同的过程都对核进行系统呼叫。核必须要
十分小心,不会将其混淆,但是它会很自然地让各个过程各行其是。因此
Linux更快捷高效。

MINIX的另一个毛病是:尽管你有源代码,但是许可证并不允许你做很多事情。拿布鲁斯?
伊文斯来说,他对 MINIX做了重大改进,使其更易在 386上使用,但是他却无法将其所做
的改进纳入原系统之中,因为 MINIX限制人们对其进行修改。从实用的角度来说,这不啻
是一个灾难。使用者哪怕为了得到一个可使用的系统都要经过多个步骤,这真是太不实用了。

就这样,我与安德鲁?塔南鲍姆结束了交战,那是在1992年年初。想象一下,在一个暴风雪
过后的早晨,你看见这样一条信息:

来自:安德鲁塔南鲍姆
ast@cs.vu.ni(安德鲁?塔南鲍姆)
新闻组:comp.os.MINIX
题目:Linux过时了。
日期:1992年
1月
29日,格林威治时间
12:12:50

我在美国待了几个星期,所以没来得及对 Linux做多少评论(不是说如果我在,我就会说什么 )。但是,
Linux确实值得一评。我现在就有话要说。

正如你们所知,MINIX只是我的爱好,每当晚上我写烦了书,如果当时没有什么战争、革命、CNN直播的
参议院听政会,我就会摆弄
MINIX。

我的真正职业是大学教授和操作系统领域中的研究人员。由于我的职业,我想我知道在今后的十年左右时
间里操作系统会向何处发展。
有两个方面引人注意:

1)微内核对Monolithic system
大多数操作系统是独立一体的,也就是说,整个操作系统是一个单独的a.out文件,一个“核形式”运行。
这种二进制中有管理过程、存储管理、文件系统及其他。这类操作系统目前有UNIX,MS-DOS,VMS,MVS,OS/
360,MULTIC以及其他很多。

另一种则是基于微内核的系统,在这种系统中大部分 OS都作为单独过程进行,还有许多通过沟通在核外
运行。核的任务是管理信息仁慈,控制中断的情况,低层次的过程管理,还可能有I/O。这种形式的操作系
统有RC400,Amoeba,Chorus,Mach,以及尚未发行的WindowsNT。

在我详尽论述两者的利弊之前,可以说那些设计了这两个操作系统的人们之间的急诊已基本结束。微内核


55


Just For Fun by Linus Torvalds

胜出。Monolithic system唯一的优点在于运行上,而现在有足够的证据证明,微内核系统也能和Monolithic
system一样快。

MINIX是一个基于微内核的系统。文件系统和存储管理相分离,在核外运行。I/O驱动也是分离的(在核中,
只是因为英特尔中央处理器中的大脑是死的这一原因,才很难寻求其他的做法)。

Linux是
Monolithic风格的系统。这一做法是回到七十年代的一大退步,就像对一个令人激动的 C程序以
BASIC语言重新编写。对我来说,在1991年还写一个Monolithic system的系统是一个不折不扣的坏主意。

2)不分界域性(Portability)
很久很久以前有一种 4004CPU,它成熟后变成了 8008,接着它接受了整形手术,就成了 8080。由
8080诞
生了8086,接下来是
8088,再后来是
80286、80386、80486,一直到了第n代。同时还出现了RISC芯片,有
些能以
100MIPS运行。200MIPS的速度以及更高能在近几年中出现。这些都不会马上消失,而是会很快从
80*86发展开去。它们会通过在软件中解析
80386来运行旧式的 MS-DOS程序。我认为任何一个架构设计
OS都是极大的错误,因为它会很快消失。

MINIX的设计就是不分界域性,并已从英特尔
ported到 680*0(Atari,Amiga,苹果
),SPAC,以及
NS32016。Linux紧紧地与80*86联系在一起,方向错了。

别误解我,我并非不喜欢 Linux,主要是
Linux会使所有那些想在BSD UNIX上运转
MINIX的人弃我而去。
坦诚地说,对那些想获得一个“现代的”免费
OS的人们,我想建议他们找一个基于微内核的、portable的
操作系统,如
GNU之类。

安德鲁?塔南鲍姆(ast@cs.vu.nl)

附:顺便说一下,Amoeba有一个UNIX仿真器(在用户的空间中运行),但是还远未完成。若有人有志在此
方面努力的话,请告诉我。运行 Amoeba需要几个386,其中一个要有 16M,所有的都必须具备
WD以太
网卡。

于是,我知道有必要维护自己的荣誉了,所以就有了下面的反击:

来自:李纳斯本尼迪克特托沃兹torvalds@klaava.Helsinki.Fi(李纳斯?本尼迪克特?托沃兹)
题目:回复“Linux是过时的”
日期:1992年
1月
29日,格林威治时间
23:14:26
组织:赫尔辛基大学


看到这种言论,我想我得有所回应了。先向那些已经听够了对Linux系统进行的议论的MINIX用户们说声
抱歉。我很想能“对诱饵视而不见”,但是……该是我好好地自我辩护的时候了。


安德鲁塔南鲍姆写道
12595@star,cs,vu,niast@cs.vu.nl(安德鲁?塔南鲍姆)写道:

>我在美国待了几个星期,所以没来得及对 Linux做多少评论(不是说如果我在,我就会说什么 )。但是,
Linux确实值得一评。我现在就有话要说。

56


Just For Fun by Linus Torvalds

>正如你们所知,MINIX只是我的爱好,每当晚上我写烦了书,如果当时没有什么战争、革命、直播的参议
院听政会,我就会摆弄
MINIX。我的真正职业是大学教授和操作系统领域中的研究人员。

你用这个作为MINIX局限性的借口?对不起,但是你输了。我的借口比你的还多,而Linux在很多领域还
是胜
MINIX一筹。更别说
MINIX的大部分似乎是由布鲁斯?伊文斯编写的了。

反驳一:你说你把
MINIX当作爱好来玩——那么,请问是谁在拿 MINIX挣钱呢?又是谁在免费发送
Linux呢?再来谈谈爱好。让
MINIX能免费获得,我对MINIX的最大抱怨就会消失。Linux在很大程度上对
我是一个爱好(但是一个很严肃的爱好,最棒的一种爱好)。我没有从我的爱好中赚一分钱,它也不是我在
大学要修的课程之一。我是纯粹用我自己的时间,在自己的机器上做出来的。

反驳二:你是教授和研究人员。这真是一个 MINIX出现核心缺陷的好借口。我只能希望
Amoeba不会像
MINIX那样垮掉。

>1.微内核对Monolithic system

没错,Linux是
Monolithic的,我同意微内核是好一点儿。如果不是你的话题有争议性,我可能会同意你的
大中分意见。从理论角度(及审美角度)而言,Linux输了。如果
GNU的kernel在去年春天就已完善的话,我
可能就不会开始这个工程。而事实是,GNU还没有完善,也远非如此。如果现在就已实现的这一点而论,
Linux才大获全胜。

>MINIX是一个基于微内核的系统。Linux是
Monolithic的系统。

如果这是判断一个kernel好坏的唯一标准,你的观点就对了。但你没提到的是,MINIX在微内核方面的表
现并不出色,而且对核内多元任务的操作仍存在着问题。如果我做的是一个在多线文件系统上有问题的OS
的话,我就不会这么快来责备别人。而事实上,我竭尽所能来使人们忘记软件设计者在此问题上的惨败。
(是的,我知道
MINIX拥有众多黑客支持者,但他们只是黑客。而布鲁斯?伊文斯告诉我有很多可以竞争的
机会。)

>2.不分界域性

“不会界域性是给那些写不出新程序的人们准备的。”


——我,现在刚说的,口出狂言

事实上,Linux比
MINIX更具有分界域性。“你说什么?”我听见你说。是真的——但却不是在你所说的意
义上。我使
Linux尽量符合标准(我当时手边并没有POSIX标准)。把程序移植到Linux上比到MINIX上要容
易得多。

我同意,不分界域性是个好东西,但是只有在它确实有意义的地方才是个令人向往的特性。没有必要专门
使一个操作系统太具有不分界域性:能粘到可移植的 API上就行了。操作系统的实质就是利用硬件的特点,
并将其隐藏在一层高级的呼叫后面。而 Linux就是如此,它比任何kernel都更多地利用了386的特性。当然
这便利真正意义上的 kernel变得不可移植,但是这也使设计大为简化,是一个可以接受的权宜之计,因为

57


Just For Fun by Linus Torvalds

这首先保证了Linux的诞生。

我也同意,Linux又太不具有不分界域性了。去年一月我拥有了自己的 386,而Linux系统的创建在一定程
度上成为了一个让我认识386的项目。如果要成为一个真正的项目,必须能够在不分界域性方面做一些事
情。但是,我最初的设计思想就是没有考虑到不分界域性,如果我这样说并不是太过分地为自己辩护。去年
四月我开始这个项目时,认为不会有什么人会真的使用它。我很高兴我的这个想法错了。随着我对源代码的
发布,每个人都可以免费来装截
Linux,哪怕还不是很方便。

李纳斯

附:很抱歉我有时言辞过激。如果你没有其他的操作系统可供选择的话,MINIX已经挺好的了。如果你有
五到十个386机器闲着没用,那么 Amoeba也会不错,只是我确定无疑是没有的。我一般不会勃然大怒,
但是在涉及到Linux的问题时,我是有点容易感情用事。

在这件事上还有一些口舌,那是我唯一一次发火。但是我要说明的问题是:的确有反对的声
音出现,哪怕在早先的日子里(或者我还证明了这一点:当你参加网上论坛时,一定要小心
从事,打字错误和语法错误会永远纠缠着你)。

我和李纳斯把家人和朋友留在露营地,开始沿着一条清流的小溪做一次午后散步。我们的露营地是在东西
亚拉 (Eastern Sierra)一个叫格鲁夫尔温泉
(Grover Hot Springs)的地方。此时是七月四日国庆日的周末,这里
的风光秀美得好像是把《国家地理杂志》上的照片原封不动搬下来似的。“现在是柯达一刻,”李纳斯一边
背诵着广告词,一边停下来欣赏着突兀的峭壁背景下铺满野花的草地。随后,我们在溪边坐下。我让他描述
一下他的生活,尤其是自从 Linux越出了其发源地——即由他认识的那些参加新闻讨论组的狂热爱好者组
成的小圈子——而广泛地传播开来之后,他的生活有何变化。

“这种感觉一定很棒,”我说道,“那些年你一直跳不出户,除了你的电脑之外只和这个世界保持着仅有
的一点点联系。突然间,这个星上的每一个角落都有人认识到你正在进行的伟大工作,你成了这个对你寄
予厚望的发展中的Linux世界的中心……”


“我从不认为这对我来说是什么大事情,”他回答道,“我真的不认为是这样。对我来说,Linux确实是那
种我随时都在思考的东西,但这主要是因为总有问题需要我去解决。我确实为它投入了很多,但主要是因
为它是一个智力的挑战,而不是因为任何感情的因素。

“我喜欢有这么多的人给我从事这个事业的动力,我曾认为自己已接受于完成它了,但我一直没有真正做
到这一点。人们始终给我更多继续的理由,以及更多困扰的棘手难是,这使得继续完善
Linux变得更为有
趣。否则,我可能早就干其他事情去了。但我没有,因为这是我喜欢的工作。做这件事充满乐趣。我怀疑,我
对自己的大鼻子或其他这方面的事情的提成,显然比在Linux上花费的精力还要多。”

几个星期后,在斯坦福购物中心,李纳斯为怎样挑选一双慢跑鞋而犯愁。“你一般每星期跑多少里地?”
售货员问李纳斯。李纳斯不由得笑了起来:在过去十年里他还从未?上过一里地。锻炼不是过去的首选功课。
但在他感到疲惫的时候,李纳斯承认他愿意走出过度的自我监禁式生活。

“塔芙一定求过你,要你帮我去掉大肚子。”他开着开玩笑,一边拍着自己的肚子。

58


Just For Fun by Linus Torvalds

“告诉她,她的要求你本周内绝不可能达到。”我回答道。

接下来的一个半小时,我们开始在斯坦福校园里兜圈,以便找到一个可以合法停车的地方。然后,在伸展
了一下胳膊腿之后,我们开始跑了起来。我们越过干涸的湖里狭窄的泥土小道来到林中,向着我们的目
标——山顶巨大的卫星接收天线——前进。当然,我们根本没有跑到那儿。我一边迈着不寻常的轻快步伐奔
跑,一边很惊讶李纳斯能够仅仅以一里的距离落在我后面而不被甩开。接着他终于不行了,几分钟后,我
们在边的草上上舒展地躺了下来。

“你的家里人对因
Linux而发生的一切事情的反应是怎样的? ”我问道,“他们对此一定感到非常的激动。



“我不认为有谁真的对此很在意,”他回答道,“我不是说没有人真的关心这件事。但我一直花费我最多
的时间在编程序上,这一次也与以前没什么不同,他们不至于为此而有什么更多的关切。”


“那么,你一定曾对你的亲属们说过些什么。比如当你和你爸爸一同出动时,你是否曾对他说:‘嘿,你
可能不会相信我一天到晚在计算机上鼓捣的那个玩艺儿现在怎么样了,现在已经有好几百人在用它了……


“没有,”他回答道,“我只是觉得没有必要与家人和朋友分享这些,我从来也没有想过要把它推荐给更
多的人。我想起了在我写 Linux程序时,拉素曾经决定要买
Xenix,UNIX的SCO系统版 (微软开发的用于
PC机的UNIX版本)。我记得他曾经试着劝说我‘不要在这上面犯错误了。’他的意思是叫我不要再继续写
下去了。但我不在意他的话,最终,在这个问题上他也有所转变。但对我来说,Linux仍然不是什么大事情。
在我看来,人们使用它固然是好事情,能够从中获得反馈意见也很棒,同时这些却并不是那么重要。我不
想传播什么福音。我为人们使用我的代码而感到骄傲,但我从来也没有过要与所有人共同分享它的念头。我
从来没有认为这是世界上最重要的事情。我也不认为有几百人用我的软件有任何的重要性可言,以至要告
诉我爸爸。不是的,它对我来说更多的是一种乐趣。直到今天我也还是这么认为。”


“那么,你甚至都没有想过告诉你的父母、家人和朋友这些事吗?你自己真的不为这些事情而激动吗?”
我问道,没有掩饰我的怀疑。

他沉吟了几秒钟,然后回答道:“我不记得我当时是否感到过激动。”

李纳斯买了一部新车,一部按他的定义很有“乐趣”的宝马
Z3双座敞篷车,车身是金属蓝,完善的男孩
子的汽车颜色。他选中这款颜色是因为没有他所中意的亮黄色。这黄色的宝马,他解释道,“看起来就像尿。
”几年来,他去位于圣克拉拉的 Transmeta公司总部上班时,总是将他的庞蒂亚克车尽可能停在离大门口
近的地方。但现在,他却将心爱的宝马车停在他办公室外的窗前,按他的廉洁这样可以停在阴影中避免暴
晒。于是,现在李纳斯在电脑前工作时就可以不时地欣赏一下他的新车了。

大约在一年多以前,我们曾经首次在一起外出旅行——开着我特意租来的白色野马敞篷车翻山去圣克塔克
鲁兹。在我们这次旅行期间,李纳斯曾停下来观察我们所参观的桑拿浴场和酿酒厂外停着的运动型轿车。现
在,我们是在他自己的运动轿车里翻山越岭。当他在十七号公路上驶过弯路时,他脸上浮起微笑。

“你应该得到这些。”我说。

59


Just For Fun by Linus Torvalds

我从车内的储物箱里拿出一摞
CD。

“听什么?平克?弗洛伊德?”我问道,“或者詹妮斯?乔普林?”


“这是我小时候听的音乐。我小时候从来没有在音乐上花过钱,但我在我家的房间里捡到过它,我猜是我
妈妈听过的,尽管我记得她是艾尔维斯?卡斯蒂罗(Elvis Costello)的歌迷。”

这是一个周五的下午,一个欢快而美好的加利福尼亚周五的下午,各种令人愉悦的感觉围绕着我们:蓝色
的天空映入眼帘,火辣辣的阳光照在身上,鼻子里是山中桉树的芳香和清新空气的甜甜味道,耳中传来的
是平克?弗洛伊德的歌声。在外人的眼里,我们看起来一定很像那种后青春期的陈腐过客,涂着防晒霜,放
着经典的摇滚曲调。不过,并没有多少车超过了李纳斯的新宝马
Z3。

我们把车停在圣塔克鲁兹以北一点儿的一号高速公路旁。路旁早停了些普通的车子,我们来到几乎没有什
么人的空旷海滩上,舒舒服服地躺了下来。几分钟后, 我从背包里掏出录音机。再一次的,我请他讲一讲
Linux早期的事情。

李纳斯用手指在沙滩上画了个四方形,表示是他的卧室,然后又指出了他的床和计算机的位置。“我起床
的第一件事就是检查有新的电子邮件,”他说道,一边用手指比划着,“有些时候我一整天都呆在屋子里。
我看邮件不仅仅是为了看有谁在和我联系,而更多的是为了看是否附带为我准备了些特殊的问题,比如是
否出现了新的状况和问题,或者是一些我们已有解决方案的老问题又遇上了新情况。”

李纳斯告诉我,那个时候他的社会生活是“可怜”的。接着他认为这样说听起来有点过分,所以他修正道,
“可能比可怜稍微好一点。”


“我并没有成为一个完全的隐士,”他说道,“但是即使在 Linux出现之后,我一如既往地不善交际。我
的大多数朋友都很善于与人相处,但我不行。你可以想象一下,如果从来没有给女人打过电话,那约会的
情况会是怎样的呢?所以在那段时间里,我只有几个常到我那里敲窗子、想和我喝杯茶的朋友。我不认为有
人会到处传说我正在做一项伟大的事业、我将改变世界之类的话。我不认为有人曾经这么想过。”

李纳斯唯一有规律的社交活动是每周的学生聚会,在这儿他可以和其他主修科学的学生混在一起,这个聚
会由一些对技术的热爱胜过一切的人组成。

“什么是我担心的?正是一般的社交活动,也许提成不是一个准确的词汇,但这确实给我带来了很多情绪
上的影响。在那个时候,只要一想到姑娘,Linux系统就变得不再重要了。在某种程度上,今天也还是这样,
我仍然可以不把
Linux当回事。

“在大学的头些年,社会交际对我来说变得非常重要。这倒不是因为担心别人会嘲笑我驼背什么的,这种
渴望社会活动的感觉来自于对朋友和别的什么东西的向往。我喜欢去学生聚会的原因之一就是,这是一种
无须过分社会化的社交活动。在这样的晚上我融入了社会,而在其他时间我与计算机在一起。在学生聚会里
玩远比
Linux更为感性,我从未为Linux感到心烦意乱,也从未因为Linux而睡不着觉。

“过去和现在,能够使我心烦意乱的,从本 ?上讲并不是技术,而是与之相关的社会因素。我为安德鲁?塔
南鲍姆的帖子如此心烦的原因,主要不是因为他所提出的技术观点。

60


Just For Fun by Linus Torvalds

“使
Linux越来越完善和有活力的原因之一是,我不断地收到回馈的信息。这意味着Linux被人所注意,同
时这也是一个正在形成的社会团体,而我是这个社会团体的领袖。这是一个明确的信号。这一毫无疑问是重
要的,甚至比告诉爸爸妈妈我曾做了些什么更重要。我越来越关注那些使用 Linux的人,至于我创造了一
个社会圈子并获得了他们的尊重之类,却始终不是我关心的重点,甚至现在也仍然不是。不过,这确实是
一个最重要的事实,也是我对塔南鲍姆的指责如此反应过度的原因。”

太阳已经没入了太平洋,到了该离开海滩的时候了。李纳斯坚持要我驾驶他的车返回——以体验一下这车
究竟有多棒。我们要经过一段又长路又多的九号路返回硅谷。

李纳斯告诉我,他与 MINIX创造者之间的争执,因为变得越来越富于攻击性而不再适于在公众面前进行,
最后不得不通过私人电子邮件进行。接下来是几个月的平静。一天,塔南鲍姆给李纳斯来了一个电子邮件,
指出在《Byte》杂志的背面有一条五行字的广告在推销商业性的Linux版本。

“在我最后一次收到的来自安德鲁的电子邮件中,他问我是否真的在授意别人出售我的系统。我回信告诉
他是的。然后我就再也没有收到过来自他的讯息了。”

大约一年后,当李纳斯到荷兰去作他的首次公开演讲时,有机会来自塔南鲍姆任教的大学,并希望获得那
本改变了他一生的书籍——《操作系统:设计与执行》——的作者在该书上的亲笔签名。李纳斯在门口等了
许久,但塔南鲍姆并没有出现,因为那时他恰好外出了。就这样,他们至今仍没有见过面。

在我首次公开演讲的头天晚上,我颤抖着躺在床上。房间里很冷,温度也就刚好在零度以上
一点。荷兰的房间不像芬兰那样冬天有暖气,而我这间漏网的大屋子甚至还有一扇大玻璃窗,
就好像荷兰永远只有夏天似的。但是,在1993年
11月
4日的这个夜晚,寒冷不是使我睡不
着的唯一原因。我睡不着,因为我是如此的紧张。

在公开场合讲话一直是我的短项。中学时,他们让我说明一些我们曾吃力地研究过的东西,
比如老鼠或其他什么的,而我总是讲不好。我站在那里,说不出话来,然后开始傻笑。说真
的,我并不喜欢这样。当我很不情愿地被老师叫到黑板前,当着全班同学解答习题时,甚至
比这还要难受。

在阿姆斯特丹附近的埃德市(Eide),我接受了在这里举行的荷兰 UNIX用户第十五届年会的
邀请,将在会上做主题发言。我很想通过这次机会证明一下自己在公开场合的说话能力。在
此之前一年,我也曾收到过来自西班牙的类似邀请,但我拒绝了。其实在那个时候,我是非
常希望出国旅行的,但我想前往一游的愿望被害怕公开演讲的心理抵消了(我现在仍然喜欢
旅行,不过在今天,这已经不像当年那样新鲜了。在那之前,我几乎从未离开过芬兰。那以
前我唯一到过的地方就是瑞典,我们在那儿露营过几次,或许还可以算上到莫斯科去看我
爸爸那次,那时我才六岁)。

拒绝到西班牙庄旅游一番的机会让我有些懊恼。所以我告诉自己,如果还有第二次这样的机
会,我绝不放过。我躺在床上,另外一些思绪渐渐取代了我的回想:我能克服恐惧站在人前
吗?我还会像过去一样嗫嚅吗?或者比这更糟,我会在将近四百名来宾面前舔着嘴唇傻笑
吗?

要真是那样,我就真是一个不折不扣的傻瓜。


文章评论

共有 2 条评论

  1. jzd8000 于 2009-10-30 11:19:36发表:

    好,看看

  2. kaiqi 于 2009-10-30 11:06:29发表:

    看过,比较固执