Der Linux-Kernel feiert seinen 28. Geburtstag

Am 25. August 1991, nach fĂŒnf Monaten Entwicklung, stellte der 21-jĂ€hrige Student Linus Torvalds gab bekannt in der Telekonferenz comp.os.minix die Erstellung eines funktionalen Prototyps des neuen Betriebssystems Linux vor, fĂŒr das der Abschluss der Portierung von bash 1.08 und gcc 1.40 bekannt gegeben wurde. Die erste öffentliche Version des Linux-Kernels wurde am 17. September prĂ€sentiert. Der Kernel 0.0.1 hatte eine GrĂ¶ĂŸe von 62 KB im komprimierten Zustand und enthielt etwa 10.000 Zeilen Quellcode. Der moderne Linux-Kernel umfasst ĂŒber 26 Millionen Zeilen Code. Laut einer Untersuchung, die 2010 im Auftrag der EuropĂ€ischen Union durchgefĂŒhrt wurde, wĂŒrde die geschĂ€tzte Kosten fĂŒr die Entwicklung eines Ă€hnlichen Projekts von Grund auf, vergleichbar mit dem modernen Linux-Kernel, ĂŒber eine Milliarde US-Dollar betragen (die Berechnung wurde durchgefĂŒhrt, als der Kernel 13 Millionen Zeilen Code hatte), nach anderen SchĂ€tzungen — ĂŒber 3 Milliarden..

Der Linux-Kernel wurde inspiriert von dem Betriebssystem MINIX, das Linus wegen seiner eingeschrĂ€nkten Lizenz nicht zufriedenstellte. SpĂ€ter, als Linux zu einem bekannten Projekt wurde, versuchten Neider, Linus des direkten Kopierens von Code einiger MINIX-Subsysteme zu beschuldigen. Die Angriffe wurden von Andrew Tanenbaum, dem Autor von MINIX, zurĂŒckgewiesen, der einem seiner Studenten beauftragte, eine detaillierte Analyse des Codes von Minix und den ersten öffentlichen Versionen von Linux durchzufĂŒhren. Ergebnisse Die Studien zeigten nur vier unbedeutende Übereinstimmungen von Codeblöcken, die durch die Anforderungen von POSIX und ANSI C bedingt waren.

UrsprĂŒnglich wollte Linus den Kernel Freax nennen, abgeleitet von den Wörtern „free“, „freak“ und X (Unix). Aber den Namen „Linux“ erhielt der Kernel durch einen freundlichen Hinweis von Ari Lemmke, der auf Bitten von Linus den Kernel auf den FTP-Server der UniversitĂ€t stellte und das Verzeichnis mit dem Archiv nicht „freax“, wie Linus es wollte, sondern „linux“ nannte. Interessanterweise gelang es dem geschĂ€ftstĂŒchtigen William Della Croce, die Marke Linux zu registrieren und im Laufe der Zeit GebĂŒhren zu verlangen, aber spĂ€ter ĂŒberdachte er es und gab alle Rechte an der Marke an Linus weiter. Das offizielle Maskottchen des Linux-Kernels, der Pinguin Tux, wurde im Rahmen eines Wettbewerbs, der 1996 stattfand, ausgewĂ€hlt. Der Name Tux steht fĂŒr Torvalds UniX.

Dynamik des Wachstums der Codebasis (Anzahl der Zeilen Quellcode) des Kerns:

  • 0.0.1 – September 1991, 10.000 Zeilen Code;
  • 1.0.0 – MĂ€rz 1994, 176.000 Zeilen Code;
  • 1.2.0 – MĂ€rz 1995, 311.000 Zeilen Code;
  • 2.0.0 – Juni 1996, 778.000 Zeilen Code;
  • 2.2.0 – Januar 1999, 1,8 Millionen Zeilen Code;
  • 2.4.0 – Januar 2001, 3,4 Millionen Zeilen Code;
  • 2.6.0 – Dezember 2003, 5,9 Millionen Zeilen Code;
  • 2.6.28 – Dezember 2008, 10,2 Millionen Zeilen Code;
  • 2.6.35 – August 2010, 13,4 Millionen Zeilen Code;
  • 3.0 — August 2011, 14,6 Millionen Zeilen Code.
  • 3.5 — Juli 2012, 15,5 Millionen Zeilen Code.
  • 3.10 – Juli 2013, 15,8 Millionen Zeilen Code;
  • 3.16 – August 2014, 17,5 Millionen Zeilen Code;
  • 4.1 – Juni 2015, 19,5 Millionen Zeilen Code;
  • 4.7 — Juli 2016, 21,7 Millionen Codezeilen;
  • 4.12 — Juli 2017, 24,1 Millionen Codezeilen;
  • 4.18 — August 2018, 25,3 Millionen Zeilen Code.
  • 5.2 — Juli 2019, 26,55 Millionen Zeilen Code.

Fortschritt der Kernel-Entwicklung:

  • Linux 0.0.1 — September 1991, erste öffentliche Version, die nur CPU i386 unterstĂŒtzt und von Diskette geladen wird;
  • Linux 0.12 — Januar 1992, der Code wird unter der GPLv2-Lizenz verbreitet;
  • Linux 0.95 — MĂ€rz 1992, UnterstĂŒtzung fĂŒr das Starten des X Window Systems, Implementierung der UnterstĂŒtzung fĂŒr virtuellen Speicher und Swap-Partition.
  • Linux 0.96-0.99 — 1992-1993, Arbeit an dem Netzwerk-Stack hat begonnen. EinfĂŒhrung des Dateisystems Ext2, UnterstĂŒtzung des ELF-Dateiformats, Bereitstellung von Treibern fĂŒr Soundkarten und SCSI-Controller, Implementierung des Ladens von Kernel-Modulen und des Dateisystems /proc.
  • Im Jahr 1992 erschienen die ersten Distributionen SLS und Yggdrasil. Im Sommer 1993 wurden die Projekte Slackware und Debian gegrĂŒndet.
  • Linux 1.0 — MĂ€rz 1994, erste offizielle stabile Version;
  • Linux 1.2 — MĂ€rz 1995, deutliche Erhöhung der Anzahl der Treiber, UnterstĂŒtzung fĂŒr die Plattformen Alpha, MIPS und SPARC, Erweiterung der Funktionen des Netzwerk-Stacks, EinfĂŒhrung einer Paketfilterung, UnterstĂŒtzung fĂŒr NFS;
  • Linux 2.0 — Juni 1996, UnterstĂŒtzung fĂŒr multiprozessorfĂ€hige Systeme;
  • MĂ€rz 1997: GrĂŒndung der LKML, Mailingliste fĂŒr Linux-Kernel-Entwickler;
  • 1998: Der erste in die Liste der Top500 eingetragene Cluster auf Basis von Linux, bestehend aus 68 Knoten mit CPU Alpha, wurde implementiert;
  • Linux 2.2 – Januar 1999, die Effizienz des Speichermanagements wurde erhöht, UnterstĂŒtzung fĂŒr IPv6 hinzugefĂŒgt, eine neue Firewall implementiert, ein neues Audiosubsystem vorgestellt;
  • Linux 2.4 — Februar 2001, UnterstĂŒtzung fĂŒr 8-Prozessor-Systeme und 64 GB RAM, Dateisystem Ext3, UnterstĂŒtzung fĂŒr USB, ACPI;
  • Linux 2.6 — Dezember 2003, UnterstĂŒtzung von SELinux, Tools zur automatischen Anpassung von Kernel-Parametern, sysfs, ĂŒberarbeitetes Speichermanagement;
  • Im Jahr 2005 wurde der Hypervisor Xen vorgestellt, der die Ära der Virtualisierung einleitete;
  • Im September 2008 wurde die erste Version der auf dem Linux-Kernel basierenden Android-Plattform veröffentlicht;
  • Im Juli 2011, nach 10 Jahren Entwicklung des Branches 2.6.x wurde Übergang zur Nummerierung 3.x. Die Anzahl der Objekte im Git-Repository hat 2 Millionen erreicht;
  • Im Jahr 2015 hat stattgefunden wurde der Kernel Linux 4.0 veröffentlicht. Die Anzahl der Git-Objekte im Repository hat 4 Millionen erreicht;
  • Im April 2018 ĂŒberschritten die Grenze von 6 Millionen Git-Objekten im Repository des Kernels.
  • Im Januar 2019 wurde der Kernel-Zweig Linux 5.0. Das Repository erreicht 6,5 Millionen Git-Objekte.

Quelle: opennet.ru

60GB SSD 8Gb DDR4