Linux-kernen er 31 år gammel

Den 25. august 1991, efter fem måneders udvikling, annoncerede den 21-årige studerende Linus Torvalds på comp.os.minix-telekonferencen, at en fungerende prototype af det nye Linux-operativsystem var blevet færdiggjort, porting bash 1.08 og gcc 1.40 havde blevet afsluttet. Den første offentlige udgivelse af Linux-kernen blev introduceret den 17. september. 0.0.1 kernen var 62 KB komprimeret og indeholdt omkring 10 linjer kildekode. Den moderne Linux-kerne har over 30 millioner linjer kode. Ifølge en undersøgelse bestilt af EU i 2010 ville de omtrentlige omkostninger ved at udvikle fra bunden af ​​et projekt svarende til den moderne Linux-kerne være mere end en milliard amerikanske dollars (beregningen blev foretaget, da kernen havde 13 millioner linjer kode) , ifølge andre skøn - mere end 3 mia.

Linux-kernen var inspireret af MINIX-operativsystemet, som ikke passede til Linus med dens begrænsede licens. Efterfølgende, da Linux blev et velkendt projekt, forsøgte modstandere at beskylde Linus for direkte at kopiere koden til nogle MINIX-undersystemer. Angrebet blev slået tilbage af Andrew Tanenbaum, forfatteren til MINIX, som bestilte en studerende til at lave en detaljeret sammenligning mellem Minix-koden og de første offentlige udgivelser af Linux. Resultaterne af undersøgelsen viste tilstedeværelsen af ​​kun fire mindre matches af kodeblokke på grund af kravene i POSIX og ANSI C.

Linus tænkte oprindeligt på at navngive kernen Freax, fra ordene "gratis", "freak" og X (Unix). Men navnet "Linux" blev givet til kernen af ​​Ari Lemmke, som efter anmodning fra Linus placerede kernen på universitetets FTP-server og navngav mappen med arkivet ikke "freax", som Torvalds bad om, men "linux". ”. Det er bemærkelsesværdigt, at den driftige forretningsmand William Della Croce (William Della Croce) formåede at registrere Linux-varemærket og ønskede at opkræve royalties over tid, men senere ombestemte sig og overførte alle rettigheder til varemærket til Linus. Linux-kernens officielle maskot, Tux-pingvinen, blev valgt som et resultat af en konkurrence afholdt i 1996. Navnet Tux står for Torvalds UniX.

Vækstdynamik i kodebasen (antal linjer med kildekode) i kernen:

  • 0.0.1 - september 1991, 10 tusind linjer kode;
  • 1.0.0 - marts 1994, 176 tusind linjer kode;
  • 1.2.0 - marts 1995, 311 tusind linjer kode;
  • 2.0.0 - juni 1996, 778 tusind linjer kode;
  • 2.2.0 - januar 1999, 1.8 millioner linjer kode;
  • 2.4.0 - januar 2001, 3.4 millioner linjer kode;
  • 2.6.0 - december 2003, 5.9 millioner linjer kode;
  • 2.6.28 - december 2008, 10.2 millioner linjer kode;
  • 2.6.35 - august 2010, 13.4 millioner linjer kode;
  • 3.0 - august 2011, 14.6 millioner linjer kode.
  • 3.5 - juli 2012, 15.5 millioner linjer kode.
  • 3.10 - juli 2013, 15.8 millioner linjer kode;
  • 3.16 - august 2014, 17.5 millioner linjer kode;
  • 4.1 - juni 2015, 19.5 millioner linjer kode;
  • 4.7 - juli 2016, 21.7 millioner linjer kode;
  • 4.12 - juli 2017, 24.1 millioner linjer kode;
  • 4.18 - august 2018, 25.3 millioner linjer kode.
  • 5.2 - juli 2019, 26.55 millioner linjer kode.
  • 5.8 - august 2020, 28.4 millioner linjer kode.
  • 5.13 - juni 2021, 29.2 millioner linjer kode.
  • 5.19 - august 2022, 30.5 millioner linjer kode.

Kerneudviklingsfremskridt:

  • Linux 0.0.1 - september 1991, første offentlige udgivelse, der kun understøtter i386 CPU og starter fra floppy;
  • Linux 0.12 - januar 1992 begyndte koden at blive distribueret under GPLv2-licensen;
  • Linux 0.95 - marts 1992, tilføjede muligheden for at køre X Window System, implementerede understøttelse af virtuel hukommelse og en swap-partition.
  • Linux 0.96-0.99 - 1992-1993, arbejdet begyndte på netværksstakken. Ext2-filsystemet blev introduceret, understøttelse af ELF-filformatet blev tilføjet, drivere til lydkort og SCSI-controllere blev introduceret, indlæsning af kernemoduler og /proc-filsystemet blev implementeret.
  • I 1992 dukkede de første distributioner af SLS og Yggdrasil op. I sommeren 1993 blev Slackware- og Debian-projekterne grundlagt.
  • Linux 1.0 - marts 1994, første officielt stabile udgivelse;
  • Linux 1.2 - marts 1995, en betydelig stigning i antallet af drivere, understøttelse af Alpha-, MIPS- og SPARC-platformene, udvidede netværksstack-kapaciteter, udseendet af et pakkefilter, NFS-understøttelse;
  • Linux 2.0 - juni 1996, understøttelse af multiprocessorsystemer;
  • Marts 1997: LKML, Linux-kerneudvikler-mailingliste grundlagt;
  • 1998: Lancerede den første Top500 Linux-baserede klynge, bestående af 68 noder med Alpha CPU'er;
  • Linux 2.2 - januar 1999, forbedret effektiviteten af ​​hukommelsesstyringssystemet, tilføjet understøttelse af IPv6, implementeret en ny firewall, introduceret et nyt lydundersystem;
  • Linux 2.4 - februar 2001, understøttelse af 8-processorsystemer og 64 GB RAM, Ext3 filsystem, USB-understøttelse, ACPI;
  • Linux 2.6 - december 2003, SELinux-understøttelse, automatiske værktøjer til justering af kerneparameter, sysf'er, redesignet hukommelsesstyringssystem;
  • I 2005 blev Xen-hypervisoren introduceret, som indvarslede virtualiseringens æra;
  • I september 2008 blev den første udgivelse af Android-platformen baseret på Linux-kernen dannet;
  • I juli 2011, efter 10 års udvikling af 2.6.x-grenen, blev overgangen til 3.x-nummerering foretaget. Antallet af objekter i Git-depotet har nået 2 millioner;
  • I 2015 fandt udgivelsen af ​​Linux 4.0 kernen sted. Antallet af git-objekter i depotet har nået 4 millioner;
  • I april 2018 blev milepælen med 6 millioner git-objekter i kernelageret overvundet.
  • I januar 2019 blev Linux 5.0-kernegrenen dannet. Depotet har nået niveauet på 6.5 millioner git-objekter.
  • Udgivet i august 2020 var 5.8-kernen den største i forhold til antallet af ændringer af alle kernerne i hele projektets levetid.
  • I 5.13-kernen blev der sat rekord for antallet af udviklere (2150), hvis ændringer var inkluderet i kernen.
  • I 2021 blev kode til udvikling af drivere i Rust tilføjet til Linux-next kernegrenen. Der arbejdes på at inkludere komponenter til at understøtte Rust i hoveddelen af ​​kernen.
  • I august 2022 blev Linux 6.0-kernegrenen dannet, da der var nok udgivelser i 5.x-grenen til at ændre det første nummer i versionsnummeret.

68 % af alle kerneændringer blev foretaget af de 20 bedste virksomheder. For eksempel, ved udvikling af kerne 5.19, blev 10.9% af alle ændringer udarbejdet af Intel, 5.7% af Linaro, 5.5% af AMD, 5.2% af Red Hat, 4.1% af Google, 3.5% af Meta, 3.1% af SUSE, 2.9 % af Huawei, 2.8 % - NVIDIA, 2.7 % - Oracle. 11.8 % af ændringerne blev udarbejdet af uafhængige bidragydere eller udviklere, som ikke eksplicit har erklæret deres arbejde for visse virksomheder. Med 5.19 linjer kode tilføjet til kernen er AMD førende med en andel på 37.9 % (amdgpu-driveren har over 4 millioner linjer kode, hvoraf de fleste er automatisk genererede header-filer med data til GPU-registre).

Kilde: opennet.ru

Tilføj en kommentar