马栏坡专栏

专注Linux C编程

Linux:黑客传说

注:本文来自环球财经记者刘洋

  今年,Linux 迎来了它的20岁生日。据称从4月开始,全球各地都在筹划着如何庆祝这一生日。但到底哪一天才是这款史上惟一可与 Windows 比肩的电脑操作系统确切的诞生之日,众说纷纭 ,有人说是1991年8月25日发明者本人李纳斯·托沃兹(Linus Torvalds)宣布项目启动那天,还有人认为应该是1991年10月5日 Linux Kernel 0.02发布之日。“教父”本人在今年4月接受采访时倒是提出了4个有意义的日子:7月3日、8月25日、9月17日、10月5日,并且说,“哪天都可以”。看来,要给 Linux 一个不漏地过生日,得需要4个生日蛋糕!

  在1998年的奥斯卡颁奖典礼上,当詹姆斯·卡梅隆手握“最佳导演奖”的小金人,模仿《泰坦尼克》中的男主角杰克发出“我是世界之王”的宣言时,全世界无不为之倾倒。影片中那被重新描绘过的“唯美”海难,使人们惊叹于卡氏的神奇。但浪漫的爱情桥段和震撼的视觉效果,也使人们忽略了另一个伟大事实:电影史上崭新的技术时代悄然来临。而这一时代,是由 Linux 开启的。

  对于这一切,李纳斯同样始料未及。尽管作为 Linux 的发明者,这位黑客出身的 IT 精英一直对这款操作系统信心十足。他可能并未想到,诞生7年来一直默默无闻的 Linux,会以众星云集的奥斯卡颁奖礼作为其征服世界之旅的转折点。

  从那时开始,梦工厂、迪斯尼、皮克斯和维塔数码等公司都逐渐将各自的工作平台转向 Linux,无数伟大的银幕经典因此横空出世。从《魔戒》到《金刚》,从《哈利波特》到《霍比特人》,从《怪物史莱克》到《纳尼亚传奇》,再从《指环王》到《阿凡达》,Linux 几乎以一己之力缔造了无数人梦中的玄幻王国。也是从那时开始,Linux 终将埋葬微软就开始成为江湖中著名的传说之一。

  与十几年前相比,今天的 Linux 依然是无数 IT 人士心中的图腾。苹果(NASDAQ:AAPL)与谷歌(NASDAQ:GOOG)都曾经严词批评微软(NASDAQ:MSFT)的垄断,都曾以崇尚开源(开放源代码)的自由斗士形象示人。但多年来,只有 Linux 真正坚持向所有人公布其核心代码,尽管在这个过程中,推动其发展的主要对象已经从自娱自乐的电脑黑客变成了追求利润的软件公司。

  与那时相比,今天的 Linux 依然小众,其市场份额只有1%,根本无法与微软动辄90%的市场份额相提并论。惟一的安慰来自 Android,这款源自 Linux 的操作系统在过去1年中独领风骚,不但令微软的 Windows Phone 望尘莫及,甚至还将苹果的 iOS 挑落马下:现在,每天激活的 Android 设备高达55万台;而仅仅3个月前,这一数字还仅为35万。

  而这一切早有伏笔,比尔·盖茨早在微软巅峰时期,就对 Linux 赞誉有加。

  就在卡梅隆扬名奥斯卡颁奖礼半年后,在一份名为《鬼节前夕》的秘密备忘录中,曾无视 Linux 的微软对这款操作系统大加褒奖,“Linux 是最优秀的 Unix 系统,它免费提供了几乎所有应用程序,其在个人设置、可用性、可靠性、扩展性和性能表现等方面均超过了 Windows NT。而由于其开放性,Linux 将超过其他所有操作系统。”在那一年的联邦反垄断诉讼中,微软的律师搬出了一整箱 Linux 以证明 Windows 并没有垄断操作系统市场。

  Linux 是黑客留给世界的美好回忆。

  对大多数黑客而言,简洁优雅的程序和干净清晰的代码,抑或是某个强大实用的程序,都足以成为他们毕生得意之作。但1969年12月28日出生的芬兰人李纳斯却选择了另一条道路,他不但重新定义了一流程序、代码和软件的标准,而且重新定义了黑客对人类的贡献——他将绚烂的效果和精简的资源、强大的能力和自由的思想融为一体。仅此一项,已无愧传奇的声望。

  平淡的开场

  对于芬兰很多为人熟知的传奇故事,1990年都是一个重要的转折点。

  这一年,最后一年征战 F3的哈基宁勇夺英国 F3冠军;在澳门格兰披治大赛最后一圈,他被当年的德国 F3冠军舒马赫撞出赛道,痛失冠军,世界车坛随后长达10年的“双雄会”自此开始。几乎同时,诺基亚(NYSE:NOK)的全球通技术进入最后攻关阶段。1年后,世界上首次全球通对话在诺基亚的 Radiolinja 网络中完成,诺基亚征服世界的脚步已经无法遏制。

  这年的李纳斯刚刚拥有第一台完全属于自己的电脑,这使他不必再忍受学校机房漫长的等待,也可以学习安德鲁·塔南鲍姆(Andrew Tanenbaum)的著作《操作系统:设计与实现》——一本 Minix 操作指南。作为 Unix 的变种,彼时的 Minix 正凭借低廉的价格和简易的操作在大学大行其道。

  “每个人都会有一本改变其一生的书籍,比如《圣经》或《资本论》。对我而言,那本红色的简装本教科书就充当了这样的角色。”李纳斯为自己的发现兴奋,但却不知道此时的塔南鲍姆正陷入窘境,因为他无法满足全球用户对于增加功能近乎永无止境的要求。

  李纳斯很快也意识到了这一点。于是,他开始编写自己的操作系统内核。他将其视为 Minix 的复制品,为此,他写信给 Minix 的一个新闻组,“我在编写一个操作系统。这是一个个人爱好,不会很大”。现在看来,当时的李纳斯完全低估了他作品的价值。

  仅仅两个月后,一个“千疮百孔但却碰巧可以使用”的磁盘驱动程序和一个小到不能再小的文件系统就诞生了,这就是第0.01版的 Linux。尽管幼稚得近乎可笑,但李纳斯完全沉迷其中,他意识到,一个比 Minix 更好的操作系统即将诞生。

  两个月后的10月5日,Linux 的第一个正式版本0.02版正式发布。这时的 Linux 已经可以运行C编译器,但还是什么现实的事情都做不了。因为李纳斯将全部精力都集中于系统内核,却没有开发任何应用程序,这使 Linux 看上去就像一个十足的黑客操作系统。

  李纳斯将操作系统上传至 FTP,并公布了全部源代码。在 USENET 讨论区,李纳斯这样阐述其初衷:在新操作系统中,“人们可以自己编写驱动程序,可以随意修改操作系统以适应不同需求,可以尝试在 Minix 上运行所有程序,这是 Minix 从未有过的美好一天。”

  到1992年1月,尽管 Linux 的实际用户只有100人,但就是这100人,为 Linux 提供了至关重要的洗礼。这些黑客们借助电子邮件和新闻组不断表达他们对这款操作系统的理解和批判,并将修改错误代码的补丁上传到了网上。李纳斯则亲自动手,将散落于互联网上的补丁拼凑起来,并继续确保任何人都可以得到基本的 Linux 文件。

  1994年3月,李纳斯对外发布了 Linux 1.0。这个终于完整起来的操作系统如同网络世界的“自由宣言”,将遍布全球的软件精英召唤在自己旗下。在这个版本操作系统所包含的数千个文件中,有一个名为 Credits 的文件,里面详细列出了为 Linux 做出卓越贡献的100多名黑客的名字、地址以及职业,李纳斯用这种独特的方式向他的同行们表示敬意与谢意。

  更重要的是,李纳斯从人们热烈的反馈中看到了完美操作系统的魅影,他决心将自由软件的理想进行到底
  庶民的胜利

  同为百年一遇的软件天才,李纳斯与盖茨宛如软件世界里的两极。盖茨中途辍学,虽然因此失去了哈佛学位,却一举成为全球首富。李纳斯则不同,为集中精力推进 Linux,他用了整整7年时间才获得赫尔辛基大学的硕士学位,因为他从未视 Linux 为赚钱工具。

  这当然不是因为李纳斯家境富裕。李纳斯的祖父是一家报纸记者,叔叔供职于芬兰电视台,父亲效力于一家电台,母亲则以翻译报纸新闻为生。由于父母离异, 跟着妈妈的李纳斯一直生活拮据。在他记忆中,为贴补家用,母亲不得不经常抵押她惟一的投资——价值500美元的赫尔辛基电话公司股票。而在芬兰,只要拥有一部该公司的电话就能拥有一张公司的股票。

  李纳斯是一个彻底的平民主义者。他从不买精装书,因为他相信精装书一定偏贵。他更喜欢好莱坞的大众娱乐片,而不是欧洲的艺术电影。这种价值观在他的事业上得到了更加淋漓尽致的展现:在投身 Linux 后,李纳斯一直致力于打破软件的垄断定价方式。

  “一个每月挣50美元的人,会为一个软件花250美元吗?如果花一点钱买非法拷贝,而把5个月的工资用于吃饱肚子,我一点不觉得他不道德。相反,去追捕这种‘侵权者’是不道德的,甚至是愚蠢的。”李纳斯因此赋予了 Linux 一个全新的定义,“就 Linux 而言,那些想藉此赚大钱的人才是不道德的,不管他在美国还是非洲,也不管程度如何。”

  李纳斯信奉自由软件的力量,而开放的思想则给 Linux 带来了巨大的回报。

  1992年,在 Linux Kernel 平台上工作的开发者只有100位,平台中的核心代码只有几万行。但到了2010年,在 Linux Kernel 平台上工作的开发者已经多达1000人,人员的背景也从最初的黑客扩散至更多的行业,平台中的核心代码则已经超过1400万行。

  1998年,全球前500台超级计算机中还只有1台运行 Linux。但13年后的今天,Linux 已经在这块市场上确立了绝对的优势:在全球前500台超级计算机中,有413台选用 Linux。这些计算机遍布世界各地的多个行业,共同主宰着这个智慧的地球。

  尽管在很多人看来,“可自由扩散”总是近似等同于“缺乏支持”和“业余水平”,但 Linux 却是一个完全不同于其他的特例。从一开始,Linux 就主要流传于软件高手中间,并且很快就在全球范围内网罗了一大批职业和业余的技术专家,形成了一个数量庞大而且非常热心主动的支持者群体,他们几乎能够通过网络即时响应和解决你的任何请求。比如 Pentium II 设计上的漏洞刚被发现,Linux 就在所有操作系统中第一个提供了完整的解决方案。1997年,Linux 支持者群体在众多的软件公司中一举胜出,荣获了美国《InfoWorld》杂志的最佳技术支持奖,而这一奖项原本是为商业公司设立的。

  人们惊叹于 Linux 的飞速成长,但很多人并不知道,最初的 Linux 远非今天的模样
  自由之精神

  Linux 1.0问世的时候,是按完全自由扩散版权进行扩散的。李纳斯要求所有的源代码必须公开,而且任何人均不得从 Linux 交易中获利。显然,他还记得在他还是个穷学生的时候,由于买不起 Unix 商业版而遭遇到的种种尴尬和苦恼。

  但半年后,李纳斯就意识到,这种纯粹的自由软件理想严重影响了 Linux 的传播,因为无法借助磁盘等形式传播,很多网络状况不好的地区根本无法使用 Linux。这种规定也阻碍了商业公司参与 Linux 的开发和维护,这使 Linux 的稳定性天然地受到社会的质疑。

  就在李纳斯苦恼需要改变之时,另一个伟大的黑客——理查德·斯托曼(Richard Stallman)登场。

  1983年,斯托曼发起了“GNU(GNU's Not Unix 的递归缩写)”计划,其目的是创建一套完全自由的操作系统,以“重现软件界合作互助的团结精神”。斯托曼深信,包括软件在内的知识确实不应是“免费的面包”,但却必须是“自由的思想”。为此,他以“著佐权”(copyleft)标准为范本拟定了一份通用公用版权协议(General Public License,GPL)。

  与强调个人版权但限制自由传播的著作权(copyright)不同,著佐权更强调公共版权和鼓励自由传播,它允许用户修改程序、复制软件和销售获利,但前提是必须保证自由思想的传递——修改后的全部源代码,也必须像它的来源一样免费向社会公开。

  GNU 计划激发了软件界极大的热情,世界各地的软件奇才们纷纷参与其中。到1990年,GNU 计划已经开发出包括文字编辑器 Emacs、C语言编译器 GCC 以及大部分 UNIX 系统程序库和工具在内的绝大多数软件,很多免费软件的水平甚至都已经超过了相应的付费版本。对斯托曼而言,GNU 计划惟一的也是 “致命”的欠缺,就是操作系统内核。

  后面的故事情节顺理成章:在各自的领域奋战多年后,李纳斯率领 Linux 加盟斯托曼的 GNU 计划,这一“联姻”堪称是软件界的天作之合。

  这一转变对 Linux 至关重要,它促进了 Linux 在商用领域的繁荣。虽然软件可以免费下载得到,但几十块一套的 CD 更方便、更经济也更快速。这也大大刺激了程序员的积极性,因为这种许可方式不但保证了他们的工作成果可以得到更广泛的传播,还确保了这些成果不会被逐利之徒所利用,成为牟利的工具。

  Linux 谱系之庞大,在世界软件史上前无古人,也几乎再难有来者。Ubuntu 来自南非,openSUSE 来自德国,Mandriva 来自澳大利亚,Mint 来自爱尔兰,Fedora、PCLinuxOS、Gentoo、CentOS 和 Slackware 来自美国,Debian 的开发者则遍及全球。这些操作系统各有所长,但全部秉承了 Linux 一贯的低价策略。

  Linux 的开发主体也从黑客转向了商业软件公司。这些公司技术雄厚又善于市场运作,它们用更友好的图形化界面和更高效的开发工具磨光了纯粹自由软件粗糙不平的棱角,使 Linux 从网络黑客和业余爱好者自娱自乐的工具,变成了一个具有全球影响力的软件王国。

  与这些同样重要的是,GNU 计划从制度上保证了 Linux 的平价策略。由于任何版本都可以在互联网免费得到,高价的软件几乎从未在 Linux 的世界里出现过。迄今为止,Linux 分销商的收入仍主要来自系统维护,但 Linux 稳定的表现则使这一部分利润同样难称丰厚。

  对于这段历史,李纳斯本人也颇为自得,“使 Linux 成为 GPL 的一员,是我一生中做过的最漂亮的一件事”。

  颠覆 Windows?

  1996年,美国一所大学准备换掉一套过时的 NetWare Server,另外安装一套新的操作系统。当时的首选目标当然是 Windows NT 4.0,然而人们没有料到,在安装了 NT 之后,竟会遇到那么多难以解决的麻烦,多次寻求技术支持又让学校破费了很多钱。

  该校系统部经理决定试用 Linux,结果却令他大感意外。从1997年1月至7月,这部服务器仅当过3次,其中两次是因为楼里的电源线路故障,另一次则是因为操作人员的愚蠢失误。更不可思议的是,在原先那套旧的 NetWare 上都已无法支持5位用户同时登陆的硬件配置,在更换为 Linux 之后居然可以轻松自如地支持40个用户同时登录做专业出版。

  人们好奇这个毫无保留的系统竟然能够拥有如此卓越的表现,也好奇这么一个强劲的对手居然没有湮灭在微软强大的攻势之下,更好奇这个系统是否能有颠覆微软的机会。

  其实,Linux 今天的表现并不意外。Linux 与芬兰民族史诗《卡勒瓦拉》有着惊人的相识。它们的最初版本都幼稚可笑,成长、成熟与成功也都完全依靠来自民间的养料。最后,就像《卡勒瓦拉》影响了芬兰的民族语言与民族文化一样,Linux 也对全世界技术精英的生存方式和价值判断产生了深远的影响。

  而在 Linux 痛苦而缓慢的成长阶段,之所以能抵御微软众多名震江湖的杀招,并不单单因为这款操作系统完全成型、性能良好、功能齐备,或许更关键的在于知易行难的四个字:无欲则刚。

  李纳斯从未想过以此牟利,他也没有普世理想,“对我来说,Linux 仍然不是什么大事情。在我看来,人们使用它固然是好事情,能够从中获得反馈意见也很棒,同时这些却并不是那么重要。我不想传播什么福音。我为人们使用我的代码而感到骄傲,但我从来也没有过要与所有人共同分享它的念头。我从来没有认为这是世界上最重要的事情。我也不认为有几百人用我的软件有任何的重要性可言,以至要告诉我爸爸。不是的,它对我来说更多的是一种乐趣。直到今天我也还是这么认为。”

  或许正因为如此,商业巨人微软才对其无可奈何。因为 Linux 几乎惟一的企图只是:技术。而技术的驱动力并不只有利益,还有金钱买不来的热爱和兴趣。

  事实上,关于 Linux 会否颠覆 Windows 的猜测从未停止,尤其当 Linux 经常性地在某些方面展现出自己相对于 Windows 的巨大优势时。 Linux 可以让用户拥有更多的操作界面和更炫的视觉效果,却不会让用户的电脑中毒,也不会让用户体会到应用程序诡异而突然的崩溃,更不会让用户的电脑在使用一段时间之后出现莫名其妙的减速。

  但 Linux 也有自己的苦恼。

  现在,由李纳斯本人所控制的主要版本已经进化到3.0,而各商业软件公司自行开发的扩散版本更是不计其数。如何对这种开发模式进行有效控制和管理,以减少软件本身不必要的膨胀,已经成为 Linux 未来必须面对的一个关键问题。很多人担心,Linux 独具分布式开发模式将使它最终乱成一团。至于战胜微软,在李纳斯那里似乎从未成为问题。

  “我根本没有打算威胁微软,因为我根本没有把微软真正视为对手,尤其没有把 Windows 视为对手——因为 Linux 和 Windows 的目标完全不一样。我从 Windows 中找不到任何技术上令人感兴趣的东西。微软做得更多的是怎么去挣钱,而不是去制作一个更好的操作系统。”

  对于 Linux 的未来,李纳斯也充满信心:“Linux 一直就是最棒的。从技术方面看,Linux 肯定会越变越好;而从非技术方面看,我更看不出有什么需要担忧。”

阅读更多
想对作者说点什么? 我来说一句

黑客传说记事本 黑客传说记事本

2009年08月04日 1.31MB 下载

黑客传说 全集 黑客技术

2009年09月12日 692KB 下载

黑客传说

2012年02月04日 1.48MB 下载

黑客传说

2013年12月12日 3.11MB 下载

比较经典的欺骗的艺术

2008年12月22日 106KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭