许多人认为 10 月 5 日是 Linux Kernel 的周年纪念日,因为这是 Linux 项目在 1991 年首次对外公开发布的时间。但你可能不知道的是,早在 1991 年 8 月 26 日,当年还是大学生的 Linus Torvalds 就向 comp.os.minix 新闻组的成员透露了出于“业余爱好”而正在研究操作系统的消息。
因此,这个时间也被许多爱好者视为 Linux Kernel 的真正诞生日期。
我正在研究一款(自由的)操作系统(就是个兴趣爱好,我不会搞得像 GNU 那么大那么专业),打算让它工作在 386(486) AT 平台上。它从四月就开始酝酿了,马上就快好了。我希望那些喜欢或不喜欢 minix 的人能够反馈意见,因为我的系统和它有点类似(同样的文件系统的物理布局 —— 由于实际原因,还有些其他的东西)。
我现在已经移植了 bash(1.08) 和 gcc(1.40), 而且看起来奏效了。这意味着我会在几个月内得到一些实用的东西。我想了解大多数人想要的特性是什么,欢迎各位积极提出建议,不过我不保证能实现 :-)
1991 年 8 月 26 日,21 岁的芬兰学生 Linus Benedict Torvalds 在 comp.os.minix 新闻组宣布了 Linux 项目,声称它只是一个业余性质的项目,不会像 GNU 那样庞大和专业。但 Linus 没有在 8 月 26 日这天发布 Linux,而是于 9 月 17 日在芬兰大学和研究网络(FUNET)的 FTP 服务器(ftp.funet.fi)上向一部分朋友私下公开了 Linux(0.01),当时只有一到两个人下载,首个公开发布的版本 Linux 0.02 是在 10 月 5 日,首个不需要 Minix 的独立版本是在当年圣诞节发布的 0.11。
最初发布的 Linux 0.01 版本仅包含10239 行代码,而现在的 Linux Kernel 5.x 系列,内核树的总代码行数约为 260 万行。
内核版本的代码行数
28 年后的今天,Linux 已经悄无声息地统治了世界,绝大部分服务器运行的都是 Linux;基于 Linux 的 Android 是目前最流行的操作系统,运行在超过 20 亿台设备上;云服务多提供基于 Linux 的系统,就连微软的 Azure 服务最受用户欢迎的操作系统也是基于 Linux;NASA 国际空间站上的大部分计算机运行的是 Linux;, SpaceX 的 Dragon 飞船和 Falcon 9 火箭也是运行 Linux。
最新的数据显示,过去的 2018 年,Linux Kernel 发布了 6 个版本,从年初的 Linux 4.15 到圣诞节前夕的 4.20,共有 74,974 个 commits,增加了 3,385,121 行代码,移除了 2,512,040 行代码,净增 87 万行代码,内核树的总代码行数为 26,132,637 行。递交最多 commits 的内核开发者除了 Linus Torvalds 还有 David S. Miller、Arnd Bergmann、Christoph Hellwig、Colin Ian King 和 Chris Wilson。
根据 "gmail.com" 的域名记录,最积极为内核贡献的厂商是英特尔(将近 6%),其次是红帽(5.3%)。
为纪念 Linux Kernel 28 周年,下面列出了 28 个与 Linux 和 Linus Torvalds 相关的有趣事实。
凭借其 200 多万行的代码量,Linux Kernel 仍然是地球上(单个)最大的开源项目。
Linux 差点不叫这个名字!Linus Torvalds 原本想把他的“业余爱好”项目称为 “FreaX”(“free”, “freak” 和 “Unix”的组合)。值得庆幸的是,他早期使用的代码托管服务器的所有者说服了他,最终取名为 “Linux”(“Linus” 和 “Unix”的组合)。
首个 Linux 版本 100% 由 Linus Torvalds 编写,但最新的版本由 Linus 编写的代码仅包含不到 1%。这并不是说明他懈怠,只是他现在主要忙于管理和合并其他开发者编写的代码。
Linux 被世界上所有主要的太空计划使用,其中包括 NASA 和 ESA。
谈及更广阔的宇宙,有以 Linux 和 Linus Torvalds 命名的小行星。
Linux 的吉祥物 Tux 之所以是一只企鹅,据 Linus 回忆是因为他曾经被一只愤怒的企鹅咬伤。
Linux 完全统治超级计算机。截至 2018 年,世界上最快的 500 个超级计算机 100% 运行 Linux。
Linux 开发社区非常活跃。据统计,Linux Kernel 以平均每小时 7.8 个补丁的速度被合并。
Linux 早期以 MINIX 操作系统为原型,导致 Linus 采用类似于 Minix 的文件系统布局来实现他的新兴项目。之后由于被证明效率低下,Linus 采用“扩展文件系统”(ext)取代它,至今仍在使用。
Linux 1.0 于 1994 年 3 月 14 日发布,共包含 176,250 行代码。2.0 版本紧随其后,于 1996 年发布。
Linux 运行在从智能手机到服务器,再到潜艇和太空火箭等大量事物上。
乔布斯曾在 2000 年为 Linus Torvalds 提供一份工作,条件是他停止在 Linux 上的开发。Linus 拒绝了。
Linux 有多成功?它的长期竞争对手微软,在 90 年代初曾试图“毁灭”该项目,到现在却在利用 Linux 进行服务器业务的发展,甚至在为内核开发做贡献!
说到贡献,谷歌、英特尔、华为、三星、红帽、Canonical 和 Facebook 是近年来 Linux 内核开发的主要贡献者。
Linus 出生于芬兰,一个双语国家,并认为瑞典语是他的“母语”。他说,由于发音不同,他常常觉得用英语说话“不舒服”,但却更喜欢阅读英文书籍。
Linux 可能是现在最大的自由软件项目(参见第一条),不过在 1991 年首次发布时,它仅有约 1 万行代码。
在重新调整其开发和发布时间表后,新版本的 Linux kernel 现在基本每隔 66 天左右发布一次。
Linux 不是 Linus Trovalds 唯一知名的作品,还有 Git 版本控制系统和潜水日志软件 SubSurface。
Linus 之所以开发 Git 的是当时因版权问题,Linux 内核开发社区不能继续使用版本管理软件 BitKeeper,而又没有其他的替代方案可满足需求,最后 Linus 以十天的时间编写出 Git 的第一个版本。
据估计,90% 的好莱坞视觉效果在生产流程的某个阶段依赖于 Linux。
根据 openhub.net 的统计数据,超过 95% 的 Linux Kernel 代码是用 C 语言编写的。
最新版本的 Linux kernel 可能有 13.3%的代码由空行组成。这并非毫无意义,空行是严谨的编码风格的一部分,使内核保持整洁、高效和有序。
基于 Linux 的 Android 是目前全球最成功的移动操作系统。
Linux 的每个内核版本都有一个有趣的代号,比如 v4.13 的 “Fearless Coyote” 和 v4.18 的 “Merciless Moray”。
据红帽所述,排名前十的公有云中有 9 个是运行在 Linux 上的。
Ubuntu 是世界上最流行的基于 Linux 的桌面发行版,它在全球拥有约 2000 万用户。Linux 占台式计算机约 2% 的使用份额。
第一本关于 Linux 的出版物是 Matt Welsh 于 1993 年出版的 “Linux 安装和入门” 。第一本专刊 “Linux Journal” 于 1994 年 3 月出版(于本月初宣布停刊),并首次对 Linus 进行了采访。
Linux 是开源领域最着名的模范,但其实早期版本的 Linux 是禁止商业使用或再分发的。直到 1992 年发布 0.12 版本,Linus 才采用 GPL 协议。
最后,祝 Linux Kernel 生日快乐,特意为她准备了一个生日蛋糕……
1.兆易创新推出RISC-V架构的GD32VF103,这是MCU界的“小欢喜”
2.美国“帮”我们统计了114家华为公司!
3.使用STM32通用Bootloader,OTA更加Easy了!
4.接手别人的代码,你愁吗?
5.宁愿写两遍代码,也不用 C++跨iOS、Android平台开发?
6.50 年来最具影响力的十大编程语言!
免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。