Linux 内核已经 29 岁了

25 年 1991 月 21 日,经过五个月的发展,XNUMX 岁的学生 Linus Torvalds объявил 在 comp.os.minix 新闻组中,有关创建新 Linux 操作系统的工作原型的消息,其中提到了 bash 1.08 和 gcc 1.40 的移植完成。 Linux 内核的第一个公开版本于 17 月 XNUMX 日宣布。 核 0.0.1 压缩后大小为 62 KB,包含约 10 万行源代码。 现代 Linux 内核有超过 26 万行代码。 根据欧盟 2010 年委托进行的一项研究,从头开始开发一个类似于现代 Linux 内核的项目的大约成本为 超过十亿 美元(内核有13万行代码时计算),据 到其他 估计 - 超过3亿.

Linux 内核的灵感来自于 MINIX 操作系统,但 Linus 不喜欢该操作系统,因为它的许可证有限。 随后,当Linux成为一个众所周知的项目时,不怀好意的人试图指责Linus直接复制一些MINIX子系统的代码。 这次攻击被 MINIX 的作者 Andrew Tanenbaum 击退,他指派他的一名学生对 Minix 代码和 Linux 的第一个公共版本进行详细比较。 结果 研究表明,由于 POSIX 和 ANSI C 要求,只有四个次要代码块匹配。

Linus 最初想到将内核称为 Freax,取自“free”、“freak”和 X (Unix) 等词。 但由于 Ari Lemmke,内核被命名为“Linux”,他应 Linus 的要求,将内核置于 FTP服务器 大学,将存档目录命名为“linux”,而不是按照 Torvalds 的要求命名为“freax”。 值得注意的是,有进取心的商人William Della Croce设法注册了Linux商标,并希望随着时间的推移收取专利费,但后来改变了主意,将商标的所有权利转让给了Linus。 Linux 内核的官方吉祥物企鹅 Tux 被选中 竞争,于1996年举行。 Tux 这个名字代表 Torvalds UniX。

内核代码库的增长动态(源代码行数):

  • 0.0.1 - 1991年10月,XNUMX万行代码;
  • 1.0.0 - 1994年176月,XNUMX万行代码;
  • 1.2.0 - 1995年311月,XNUMX万行代码;
  • 2.0.0 - 1996年778月,XNUMX万行代码;
  • 2.2.0 - 1999 年 1.8 月,XNUMX 万行代码;
  • 2.4.0 - 2001 年 3.4 月,XNUMX 万行代码;
  • 2.6.0 - 2003 年 5.9 月,XNUMX 万行代码;
  • 2.6.28 - 2008 年 10.2 月,XNUMX 万行代码;
  • 2.6.35——2010年13.4月,XNUMX万行代码;
  • 3.0 - 2011 年 14.6 月,XNUMX 万行代码。
  • 3.5 - 2012 年 15.5 月,XNUMX 万行代码。
  • 3.10——2013年15.8月,XNUMX万行代码;
  • 3.16——2014年17.5月,XNUMX万行代码;
  • 4.1 - 2015年19.5月,XNUMX万行代码;
  • 4.7——2016年21.7月,XNUMX万行代码;
  • 4.12——2017年24.1月,XNUMX万行代码;
  • 4.18 - 2018 年 25.3 月,XNUMX 万行代码。
  • 5.2 - 2019 年 26.55 月,XNUMX 万行代码。
  • 5.8 - 2020 年 28.36 月,XNUMX 万行代码。

内核开发进度:

  • Linux 0.0.1 - 1991年386月,第一个公开版本,仅支持iXNUMX CPU并从软盘启动;
  • Linux 0.12 - 1992年2月,代码开始在GPLvXNUMX许可下分发;
  • Linux 0.95 - 1992年XNUMX月,提供了运行X Window系统的能力,实现了对虚拟内存和交换分区的支持。
  • Linux 0.96-0.99 - 1992-1993,网络堆栈的工作开始。 引入了Ext2文件系统,增加了对ELF文件格式的支持,引入了声卡和SCSI控制器的驱动,实现了内核模块的加载和/proc文件系统。
  • 1992 年,第一个发行版 SLS 和 Yggdrasil 出现。 1993 年夏天,Slackware 和 Debian 项目成立。
  • Linux 1.0 - 1994 年 XNUMX 月,第一个正式稳定版本;
  • Linux 1.2 - 1995年XNUMX月,驱动程序数量显着增加,支持Alpha、MIPS和SPARC平台,扩展了网络堆栈的功能,数据包过滤器的出现,NFS支持;
  • Linux 2.0 - 1996 年 XNUMX 月,支持多处理器系统;
  • 1997 年 XNUMX 月:LKML(Linux 内核开发者邮件列表)成立;
  • 1998年:第一个跻身Top500榜单的基于Linux的集群推出,由68个节点组成,配备Alpha CPU;
  • Linux 2.2 - 1999年6月,提高了内存管理系统的效率,添加了IPvXNUMX支持,实施了新的防火墙,引入了新的声音子系统;
  • Linux 2.4 - 2001 年 8 月,提供对 64 处理器系统和 3 GB RAM、ExtXNUMX 文件系统、USB 支持、ACPI 的支持;
  • Linux 2.6 - 2003年XNUMX月,SELinux支持,自动调整内核参数,sysfs,重新设计的内存管理系统;
  • 2005年,Xen虚拟机管理程序推出,开启虚拟化时代;
  • 2008年XNUMX月,基于Linux内核的Android平台第一个版本形成;
  • 2011年10月,经过2.6年的XNUMX.x分支的发展 实施的 过渡到编号 3.x。 Git存储库中的对象数量已达到2万个;
  • 在今年2015 发生了 Linux 内核 4.0 发布。 仓库中的git对象数量已达4万个;
  • 今年四月的2018 克服 内核存储库中 6 万个 git 对象的里程碑。
  • 2019年XNUMX月,内核分支成立 Linux 5.0。 该存储库已达到 6.5 万个 git 对象。
  • 2020 年 5.8 月发布内核 XNUMX 就项目整个存在期间所有内核的更改数量而言是最大的。

来源: opennet.ru

添加评论