Linux之路
2016-09-04 21:12:21 阿炯

1991年8月25日,芬兰电脑科学专业的学生李纳斯·托沃兹(Linus Torvalds)不经意间对朋友提及自己的新玩意儿:“我在打造一个免费开源的操作系统。”他说自己只是兴趣之举。不过他所做出来的东西远超“兴趣”那么简单。今天,开源操作系统Linux已成为世界上最重要的电脑程序之一。听名字你可能陌生,其实它一直常伴在你左右:你的手机、平板的操作系统都是基于Linux构建的。就算你在使用iPhone和Mac,你也同样与Linux打过照面了。因为几乎所有的网站和网页都是由Linux在带动。Facebook、谷歌、Pinterest还有维基百科——他们的服务器无不是基于Linux搭建的。

简单说,没有Linux,互联网不会有今天这么精彩。而且不要以为Linux只是个存在于网络世界的东西。现在它也开始进入电视机和汽车的操作系统中了。25年前李纳斯·托沃兹出于爱好摆弄出来的一套代码,如今已经走进我们生活的方方面面。称之为“万物枢机”并不为过。

念头缘起

打造Linux的年头产生自25年前。那个时候,全世界服务器的操作系统都被AT&T贝尔实验室的Unix系统垄断。不过美中不足的是,Unix版权归AT&T所有,只能运行在高端机器上。极客们渴望有一个能与之媲美的系统出现,让普通人在自家电脑上就能体验科技之美。

1984年,理查德·斯托曼(Richard Stallman)开始了GNU项目。(读者可以把这看成一个免费版本的Unix)到了1991年,斯托曼和他的公司成功地重写了Unix的全部代码。不过他们遗漏了操作系统中至关重要的一个部分:内核。内核是一个成熟操作系统必不可少的部分,有了它,硬件传输来的各种信息才能转为代码被软件理解。这个时候,托沃兹决定自己来完成内核的编写。再后来,就是我们所看到的历史了。成千上万开发者使用GNU和Linux为基础,加上他们所看重的其他各项功能,打造出他们自己的操作系统。今天在这些操作系统被统称为“GNU/Linux衍生发行版”。斯托曼和托沃兹以一点星星之火,掀起互联网的燎原盛况。

网络应用

Linux的兴起直接带动了互联网的繁荣。现在已经很难说Linux在服务器领域到底有多受欢迎。据W3Tech的一项统计,Unix和类Unix操作系统驱动着全球67%的网络服务器。而其中,Linux至少占了一半。几乎已成为服务器系统的代名词。

以生产个人计算机系统发家的微软后来也推出过服务器系统。这家商业巨头自然视Linux为心头大患,微软推出Azure之后很长一段时间,一直禁止用户在Azure上使用Linux。不过民意难遏,微软的抵抗只坚持到了2012年,之后不得不向平民出身的Linux敞开接纳的怀抱。据悉现在Azure上有大约三分之一用户运行着Linux系统,而不是微软自家的Windows Server。后来,就连微软也开始使用Linux来实现Azure背后的一些功能。为了顺应Linux流行的大趋势,微软还与Canonical (著名衍生版Ubuntu的发行商)展开合作,让用户可以在他们的Windows笔记本电脑上更方便地编写Linux程序。

Linux这么所向披靡是有原因的。做生意者钱为上,免费的自然要比收费的受欢迎。在Windows Server还在以商业思维卖高价的时候,绝大多数Linux发行版都是免费的。更重要的是,Linux是“开源软件”,就意味着使用者可以根据自己的需求随意修改Linux程序,使它更好地服务自己的需求。而这在商业系统上是不被允许的。

随着网络的发展,软件开发者给Linux不断配备上更完备的软件功能。现在,一些重要的技术比如Apache web server, MySQL database, 还有Perl编程语言已经成为几乎所有Linux发行版的必备套装。或许Linux的成功还可以算进一点时运上的侥幸。在1990年代,一大波类Unix的服务器操作系统涌现,处于行业领先地位的AT&T当然不会放任这么多竞争对手的成长。AT&T通过一连串官司和法律诉讼打击了当时几家势力较大的竞争对手。不过尽管面对行业老大哥的围追堵截,幸运的是,平民系统Linux还是最终发展壮大起来。

一天 4600 行代码

Linux Kernel的开发比以往任何时候都要繁荣,每小时有7.8个补丁,每天有4600行代码。上面的数据来自Linux基金会周一发布的有关Kernel开发的报告,标题为“Linux Kernel开发——是谁在做,做得多快,做的什么,谁在赞助”。这是组织近几年在这方面发布的第七次报告。

这篇报告主要介绍有关Linux Kernel 4.7的情况,重点介绍了3.19到4.7的版本。上一次报告于2015年三月发布,主要介绍3.11到3.18的情况。根据报告的数据,一共有来自1300家不同的公司,超过13500名开发者为Linux Kernel贡献了代码。自2005年Git问世,提交信息的追踪成为可能。根据上一份报告,有来自400家不同公司的5000名开发者贡献了代码,并 且,有一半的开发者是第一次提交代码。现在开发的速度无疑变得更快了。去年,每7.71小时就有一次change被接受,现在的速度是7.8次。每9到10周就会有一个新版本的Kernel问世。

Intel、Red Hat、Linaro、Samsung、SUSE、IBM、Renesas、Google、AMD、德州仪器和ARM在Linux Kernel的贡献和赞助方面居于首位。Outreachy计划——给未被列出的组织提供开源实习——列居13位。然而,总体上讲,开发者无偿贡献的部分从2014年的11.8%降到了7.7%。

Linux Kernel于25年前起步,包括两千两百万行代码。Enterprise Strategy Group的首席分析师Stephen Hendrick指出,“Linux Kernel依然是最宝贵的、最成功的开源软件范例。”开发者有偿开发部分的增长“表现出Linux对IT社区的重要性促进了自身的发展”,Hendrick说道。他还表示,Linux Kernel现在已有25年,这也证明了这个项目拥抱变化的能力。“Linux Kernel让开发者参与贡献和管理更容易,”Hendrick说,“总体上讲,与时俱进也值得我们去学习。”

正日益庞大和专业

1991年8月25日, Linus Torvalds在comp.os.minix新闻组里宣布了Linux项目,声称它只是一个业余性质的项目,不会像gun那样庞大和专业。25年后的今天,Linux已经变得远比Torvalds能想象的更庞大更专业。它驱动了互联网的基础设施、企业数据中心、网站、股票交易所、以及世界最流行的智能手机系统,绝大部分的超算。即便在个人电脑领域输给了Windows 和Mac,但它仍然运行在数以千万计的台式机和笔记本电脑上,甚至微软都在Windows 10上引入了Linux子系统。Linux的重要性日益增长,它的开发也从未付费的志愿者转移到付费的专业开发者手中。根据25周年版的Linux Kernel开发报告,志愿者贡献的代码比例降低到了7.7%,绝大部分代码都是企业开发者贡献的,Linus Torvalds本人则受雇于非营利的Linux基金会。

迈向更广阔世界

过去的无数日夜,Linux默默无闻地承担着幕后角色。兢兢业业地服务着世界上最受欢迎的网站。不过在个人计算机领域却一直算不上成功。大众用户喜欢直观简单,而Linux复杂的命令行和蹩脚的图形化界面一直让普通电脑用户不敢亲近。命运的改变在2008年到来,为遏制iPhone的迅速发展,谷歌在当年推出Android手机操作系统。虽然Android并不能直接运行Linux桌面程序,不过Android的成功给Linux之类的开源软件带来很大启发。苦苦摸索了17年之后,开源软件终于迎来了进入个人设备的曙光。

Android现在已经成为智能手机市场的大热词。各种Android定制版几乎占据了iPhone之外的全部市场份额。据高德纳咨询公司的调查,2016年第一个季度,Android手机阵营占据市场高达84%的份额。不过Linux的野心并不满足于手机。现在你已经可以在三星和LG的智能电视中看到它的身影。亚马逊的Kindle阅读器里面也藏着它得意的微笑。

Linux的雄心还囊括了汽车。特斯拉汽车里面巨大的显示屏便是由Linux系统驱动。而其他很多著名汽车厂商,比如丰田、本田和福特也纷纷出钱赞助“Linux汽车”(Automotive Grade Linux)项目。后者旨在开发车载软件和实现汽车联网。现在被火热讨论的自动驾驶汽车,也大量使用了Linux技术来完成复杂的自动化操控。

无论是试图实现自定义功能的软件开发者,还是渴求打造自己独有技术的汽车公司——他们都因为相同的原因而选择Linux。Linux让他们可以方便地修改代码以满足自己的需要,然后还可以自由地分享和投入批量生产,而不必像商业软件那样得经过授权许可。而这一切,都始自25年前那个芬兰学生的那个兴趣之举。李纳斯·托沃兹选择把自己的作品与世界分享,而不是闭源收费,完成了“兴趣之举”到功德无量的华丽转变。

25 个你可能不知道的 Linux 真相

真相1:在这个Linux基金会的协作项目里有1.15亿行代码。而与之相比,Windows XP只有0.45亿行代码。

真相2:Linux内核项目是世界上最活跃的开源项目。它平均每天会接受185个补丁。

真相3:每年大约有4.1万人参与开发Linux,如果要给他们发薪水的话,差不多每年需要50亿美金。

真相4:Linux基金会为了让Linus Torvalds继续开发Linux,每年给他发1000万美金的薪水。他的净资产已达1.5亿美金。

真相5:尽管加起来有这么多的钱,还有那么多运行在Linux上的系统, 但是Linus仍然工作在家里,哦,还有他的猫在陪着他。

真相6:在Linus还在芬兰军队服役时,他那时从事弹道计算,他买了一本Andrew Tanenbaum的《操作系统:设计与实现》。那本书介绍了Minix ,这是一个用于教育用途的简化版Unix,正是这本书开启了Linus的Unix思想之路。

真相7:虽然Linux的第一版全是由Linus写就的,但是他最初的贡献仅占今天全部的代码的不到1%。他说他现在忙于合并代码而没空自己写代码了。

我没有一个五年计划,也没有登月计划。我很高兴我周围的人可以看着星星说“我要去那里!”,但是我会看着脚底下,把那些我前行时会掉进去的坑填上。——Linus Torvalds

真相8:其它的软件界著名人物,比如比尔盖茨、扎克伯格都放弃了他们的学业而投身于事业之中。而 Linus 不仅在 Linux 取得了一定成功之后继续上学,而且一直念到了硕士毕业。

真相9:虽然Linus创造了Git,但是他从不通过GitHub接受补丁,即便Linux也放在GitHub上,而且有多达35000个星!

真相10:Linux的吉祥物是一个名为“Tux”的企鹅:

真相11:来自各行各业的公司的开发者们给Linux贡献了代码,以下是按贡献进行的排名:

真相12:世界上97%的超级计算机运行在Linux上,包括NASA的集群。

真相13:SpaceX在其Merlin火箭引擎中使用了一个特殊的容错设计的Linux,帮助完成了32次空间任务。

真相14:2009年德国慕尼黑政府从Windows切换到了Linux。他们声称在软件许可证费用上大约节约了1000万欧元。不过这个切换让他们在生产效率方面损失不小。

真相15:Linux可以运行在仅售 5 美元的微型树莓派计算机上。

真相16:Linux已经成为世界之王了吗?《泰坦尼克号》是首部使用Linux服务器制作的大片。

真相17:虽然视频游戏开发商Valve的创始人Gabe Newell公开宣称他认为Linux 是游戏的未来,但是他的公司基于Linux的Steam Machine游戏机却失败了。相比2010年,使用Linux玩游戏的人更少了。

真相18:Dronecode是一个Linux无人机项目。大约有一千家公司在这个系统的基础上开发他们的无人机产品。

真相19:丰田和猎豹计划将来在他们的汽车中使用汽车级Linux(AGL)。

真相20:Linux有很多发行版,大多数发行版都是基于别的发行版的。最流行的发行版是Ubuntu,它是基于Debian的。

真相21:Red Hat是一家开发针对企业的Linux发行版的公司。它是开源软件领域最大的公司,今年准备达成营收50亿美元的目标。

真相22:Linux并不一定需要图形界面。许多开发者都是使用命令行来操作它的,比如Bash。你也可以从很多种图形界面中选择一个,比如Xfce和KDE。你可能听说过“Xubuntu”这个词,它的意思是“Ubuntu with Xfce”。你想必能猜出“Kubuntu”的意思吧?

真相23:Linux使用的是GPL许可证。“大多数软件的许可证都为了夺走你分享和修改它的自由。相比之下,GNU GPL许可证力图捍卫你分享和修改自由软件的自由——以确保软件对它的任何用户都是自由的。” —— GNU GPL序言

真相24:Linux采用“类 Unix”设计,它的单体Linux内核控制着文件系统、网络和进程管理。剩下的功能部分由模块来控制——大部分来自GNU项目。

真相25:即使是微软的Windows ,这个Linux的最大的竞争对手,也在拥抱Linux。它最近将Ubuntu Bash 集成到了Windows 10 之中。


本文源自:互联网


时间一下来到了2020年,Linux 迎来了 29 岁,借此机会我们来展示它一路走过的那些瞬间。

1991 年的 8 月 25 日,来自芬兰赫尔辛基大学的 Linus Torvalds 用 Minix 操作平台建立了一个新的操作系统内核,并把它发回 Minix Usenet 新闻组。此时,年仅 21 岁的大学生 Linus 不会意识到,自己当做兴趣爱好开发的一个小项目会在 29 年后发展成统治世界的庞大操作系统内核。

在 Linux 正式对外公布的 29 周年之际, ZDNet 资深编辑 Steven J. Vaughan-Nichols 整理了 Linux 29 年历史所经历的重大事件。下面就让我们一起来看看 Linux 如何一步步从一个大学生的业余爱好成长为今天这个庞大的操作系统内核。


1991 年 —— Linus Torvalds 向全世界介绍 Linux

图中这条消息是在 1991 年 8 月 25 日发回 Minix Usenet 新闻组的。当 Linus Torvalds 在谈到他的新的免费操作系统时,他并不知道自己写的这个东西会在未来变成什么,他写道:“ 这只是出于我的个人爱好,不会像 GNU 那样成为 386(486) AT 克隆的那样大而专业的系统。"



1992 年 —— Linux 面临的第一次战争

操作系统大师、Unix 的教育操作系统版本 Minix 的创造者 Andrew Tannenbaum 宣称 “Linux 已经过时了”,Linux 面临的第一次操作系统战争开始了。在由此引发的讨论中,Linus Torvalds 对他对 Linux 的愿景做了一个很有说服力的评论,这个评论在今天仍然是正确的,“ 如果 GNU 内核(另一个创建类似 Unix 的自由操作系统的项目)在去年春天就已经准备好了,我甚至不会费心去启动我的项目。然而事实是,它没有,现在仍然没有。Linux 在现在可用的点上赢得了很大的优势。"



1993 年 —— Slackware Linux 发行

早期有一些 Linux 发行版,如 MCC 和 Yggdrasil Linux,但 Patrick Volkerding 的 Slackware 是第一个广泛成功的 Linux 发行版,它至今仍在更新和使用。



1993 年 —— Debian Linux 诞生

Debian Linux,流行的社区版 Linux,是由它开始的。今天,它是 Mint、Ubuntu 和许多其他流行的 Linux 发行版的基础。



1994 年 —— 红帽公司成立

Marc Ewing 创建了红帽 Linux。Bob Young 收购了 Ewing 的公司,将其与自己的公司合并,并组建了红帽,这是迄今为止最成功的 Linux 公司。



1995 年 —— 首届 Linux 博览会开幕

这一年,Linux 有了第一个贸易会议,Linux 博览会。之后还诞生了更多的展会。今天,仅在美国就有十多个主要的地区性和全国性的 Linux 贸易展。



1996 年 —— 首个 Linux 桌面界面诞生

KDE 是第一个主要的 Linux 桌面界面,它于 1996 年由 Matthias Ettrich 创造。Matthias Ettrich 之所以创办它,是因为他想做一个易于使用的桌面。KDE中的 “K” 是 “Kool” 的意思。这个名字也是 Unix 的通用桌面环境(CDE)的一个近似变换。



1996 年 —— SUSE Linux 发布

同样在 1996 年,在 Slackware 和红帽 Linux 合作后,欧洲顶级商用 Linux 厂商 SUSE 发布了其首款独立 Linux 发行版。如今 SUSE 依然是 Linux 和云计算领域的重要厂商。


1997 年 —— GNOME

Miguel de Icaza 和 Federico Mena 开始着手开发一个新的 Linux 桌面,命名为 GNOME 。该桌面完全基于自由软件构建,GNOME 与 KDE 一起,将成为 Linux 最重要的两个桌面之一。



1998 年 —— 微软的“万圣节文件”

Linux 的快速发展引起了专有操作系统巨头微软的重视。早期的 Linux 和开放源代码负责人 Eric S. Raymond 透露了一份来自微软内部的万圣节文件,该文件表明微软正认真对待 Linux 带来的市场威胁,将其视为竞争对手,并开始制定其反开放源代码和 Linux 运动的计划。然而十年后,微软将改变自己的腔调。



1999 年 —— Corel Linux 桌面

Corel 发布了第一个主流 Linux 桌面。虽然不成功,但它将为其他流行的 Linux 桌面发行版铺平了道路,例如后来 Ubuntu 。



1999 年 —— Linux 与微软 Windows 首次正面对决

Linux 首次在文件服务方面与 Windows NT 进行了基准测试。Linux 赢了。Linux 与 Windows 服务器操作系统的战争开始了。Linux 最终获胜。今天,Linux 在网络服务器和云计算领域都占据了主导地位。


2000 年 —— IBM 向 Linux 投资 10 亿美元

在这一年,IBM 宣布将在 2001 年向 Linux 投资 10 亿美元。这将被证明是 IBM 有史以来最好的投资。通过此举,IBM 也打破了 Linux 在企业市场的僵局。


2001 年 —— Linux 2.4 版本发布

经过一段时间的延迟,Linux 2.4 发布了。有了这个版本,Linux 成为与 Solaris 和其他高端服务器操作系统竞争的对象。


2003 年 —— SOC 与 Linux 开战

由旧的 SCO Unix 公司和 Caldera Linux 业务组成的 SCO 系统出现,但 SCO 背弃了自己的Linux 历史,起诉 IBM 和其他公司,试图证明 Linux 是 Unix 的复制品。该公司失败了,但在一段时间里其 FUD 一直阻挠着 Linux 的商业接受度。



2004 年 —— Ubuntu 来了

Ubuntu 诞生了。在 Debian Linux 的基础上,Ubuntu 成为了一个非常流行的 Linux 桌面操作系统,也是所有云 Linux 发行版中最重要的一个。



2004 年 —— Linux 统治超级计算机

此时,在世界上最快的超级计算机中,超过一半运行着 Linux。到了 2017 年,所有的超级计算机都将运行 Linux



2005 年 —— Linux 商业化的成功

Linus Torvalds 首次出现在了《商业周刊》的封面上,打破了人们对 Linux 成为主要商业参与者的任何怀疑。广告语是什么?Linux Inc. 今天,你很难找到任何不在 Linux 上运行的大型企业。



2007 年 —— 基于 Linux 打造的 Android 系统诞生

包括谷歌和众多硬件厂商在内的开放手机联盟宣布推出 Android 系统。它将成为最受欢迎的移动端用户操作系统,因为它在超过 10 亿部智能手机上运行。



2008 年 —— 证券交易所系统转移到 Linux

纽约证券交易所改用 Linux 作为核心操作系统,这一举措很快就被世界上许多其他主要证券交易所效仿。Linux 并没有成为大生意,Linux 本身就是大生意。


2011 年 —— 谷歌推出 Chromebook

谷歌推出首款 Chromebook,CR-48。它运行基于 Gentoo-Linux 的 ChromeOS。到 2015 年,Chromebook 在教育市场等轻办公领域的销量已经超过了 Windows 笔记本。



2012 年 —— 云运行在 Linux 之上

IT 产业开始从服务器和数据中心转移到云端,而云端设备运行在 Linux 上。到 2019 年,即使在微软 Azure 上,微软客户的虚拟机(VM)实例也有一半以上运行 Linux。


2012 年 —— 红帽身价达到 10 亿美元

红帽成为第一家十亿美元的开源公司。2016 年,它成为第一家价值 20 亿美元的 Linux 企业。


2014 年 —— 微软 “示爱” Linux

微软新任 CEO Satya Nadella 宣称,“ 微软热爱 Linux ”。随后,微软通过在云端和内部部署支持 Linux 和开源软件来证明这一点,逐渐走上拥抱开源之路。


2018 年 —— 微软将其专利组合开源

这可能是微软有史以来最激进的支持开源的举动,微软将其整个专利组合向开放发明网络(OIN)开源专利联盟的成员开放。OIN 是为 Linux 的所有专利进行辩护的非营利组织。



2019 年 —— 微软为 Windows 10 用户推出 Linux

微软紧接着为 Windows 10 用户推出了自己的原生 Linux —— Windows Subsystem for Linux 2.0。有了它,人们可以将 Linux 与 Windows 同时运行。


2019 年 —— IBM 斥资 340 亿美元收购红帽

红帽被 IBM 以 340 亿美元收购,成为有史以来最大的软件收购案。从 IBM 的这一举动不难看出Linux 如今在科技界的主导地位。



2020 年 —— Linux 统治云计算

全球云计算市场每年超过 1000 亿美元。其中 90% 的云端设备运行在 Linux 上。

现在,Linux 与开源社区的故事仍在继续……