Linux-kjernen fyller 30 år

Den 25. august 1991, etter fem måneders utvikling, kunngjorde den 21 år gamle studenten Linus Torvalds på comp.os.minix-nyhetsgruppen opprettelsen av en fungerende prototype av et nytt Linux-operativsystem, som fullføringen av porter av bash 1.08 og gcc 1.40 ble notert. Den første offentlige utgivelsen av Linux-kjernen ble annonsert 17. september. Kernel 0.0.1 var 62 KB i størrelse i komprimert form og inneholdt omtrent 10 tusen linjer med kildekode. Den moderne Linux-kjernen har mer enn 28 millioner linjer med kode. I følge en studie fra 2010 bestilt av EU, vil den omtrentlige kostnaden for å utvikle et prosjekt som ligner på den moderne Linux-kjernen fra bunnen av være mer enn en milliard amerikanske dollar (beregningen ble gjort da kjernen hadde 13 millioner linjer med kode), ifølge andre estimater - mer enn 3 milliarder kroner

Linux-kjernen var inspirert av MINIX-operativsystemet, som Linus ikke likte på grunn av den begrensede lisensen. Senere, da Linux ble et velkjent prosjekt, prøvde dårlige ønsker å anklage Linus for direkte å kopiere koden til noen MINIX-undersystemer. Angrepet ble slått tilbake av Andrew Tanenbaum, forfatteren av MINIX, som ga en av studentene sine til å gjennomføre en detaljert sammenligning av Minix-koden og de første offentlige versjonene av Linux. Resultatene av studien viste tilstedeværelsen av bare fire ubetydelige samsvar med kodeblokker på grunn av POSIX- og ANSI C-krav.

Linus tenkte opprinnelig på å kalle kjernen Freax, fra ordene "gratis", "freak" og X (Unix). Men navnet "Linux" ble gitt til kjernen takket være Ari Lemmke, som, på Linus' forespørsel, la ut kjernen på universitetets FTP-server, og kalte katalogen med arkivet ikke "freax", som Torvalds ba om, men "linux. ” Det er bemerkelsesverdig at den driftige forretningsmannen William Della Croce klarte å registrere Linux-varemerket og ønsket å samle inn royalties over tid, men senere ombestemte seg og overførte alle rettigheter til varemerket til Linus. Den offisielle maskoten til Linux-kjernen, Tux the penguin, ble valgt som et resultat av en konkurranse som ble holdt i 1996. Navnet Tux står for Torvalds UniX.

Vekstdynamikk for kjernekodebasen (antall linjer med kildekode):

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

Kjerneutviklingsfremgang:

  • Linux 0.0.1 - september 1991, den første offentlige utgivelsen, som kun støtter i386 CPU og starter opp fra en diskett;
  • Linux 0.12 - januar 1992 begynte koden å bli distribuert under GPLv2-lisensen;
  • Linux 0.95 - mars 1992, muligheten til å kjøre X Window System er gitt, støtte for virtuelt minne og swap-partisjon er implementert.
  • Linux 0.96-0.99 - 1992-1993, arbeidet begynte på nettverksstakken. Ext2-filsystemet ble introdusert, støtte for ELF-filformatet ble lagt til, drivere for lydkort og SCSI-kontrollere ble introdusert, lasting av kjernemoduler og /proc-filsystemet ble implementert.
  • I 1992 dukket de første distribusjonene SLS og Yggdrasil opp. Sommeren 1993 ble Slackware- og Debian-prosjektene grunnlagt.
  • Linux 1.0 - mars 1994, den første offisielt stabile utgivelsen;
  • Linux 1.2 - mars 1995, en betydelig økning i antall drivere, støtte for Alpha-, MIPS- og SPARC-plattformene, utvidede muligheter til nettverksstakken, utseendet til et pakkefilter, NFS-støtte;
  • Linux 2.0 - juni 1996, støtte for multiprosessorsystemer;
  • Mars 1997: LKML, e-postliste for Linux-kjerneutviklere, grunnlagt;
  • 1998: Den første Linux-baserte klyngen inkludert i Top500-listen ble lansert, bestående av 68 noder med en Alpha CPU;
  • Linux 2.2 - januar 1999, effektiviteten til minnestyringssystemet er økt, IPv6-støtte er lagt til, en ny brannmur er implementert, et nytt lydundersystem er introdusert;
  • Linux 2.4 - februar 2001, gir støtte for 8-prosessorsystemer og 64 GB RAM, Ext3-filsystem, USB-støtte, ACPI;
  • Linux 2.6 - desember 2003, SELinux-støtte, automatisk innstilling av kjerneparametere, sysfs, redesignet minnestyringssystem;
  • I 2005 ble Xen-hypervisoren introdusert, som innledet virtualiseringens æra;
  • I september 2008 ble den første utgivelsen av Android-plattformen basert på Linux-kjernen dannet;
  • I juli 2011, etter 10 år med utvikling av 2.6.x-grenen, ble overgangen til 3.x-nummerering gjort. Antall objekter i Git-depotet har nådd 2 millioner;
  • I 2015 ble Linux-kjernen 4.0 utgitt. Antallet git-objekter i depotet har nådd 4 millioner;
  • I april 2018 ble milepælen på 6 millioner git-objekter i kjernelageret passert.
  • I januar 2019 ble Linux 5.0-kjernegrenen dannet. Depotet har nådd 6.5 millioner git-objekter.
  • Kernel 2020, publisert i august 5.8, ble den største når det gjelder antall endringer av alle kjerner under hele prosjektets eksistens.
  • Kernel 5.13 satte rekord for antall utviklere (2150), hvis endringer ble inkludert i kjernen.
  • I 2021 ble kode for utvikling av drivere på Rust-språket lagt til Linux-neste kjernegren. Det pågår arbeid med å inkludere komponenter for å støtte Rust inn i kjernekjernen.

68 % av alle endringer i kjernen ble gjort av de 20 mest aktive selskapene. For eksempel, ved utvikling av kjerne 5.13, ble 10 % av alle endringer utarbeidet av Intel, 6.5 % av Huawei, 5.9 % av Red Hat, 5.7 % av Linaro, 4.9 % av Google, 4.8 % av AMD, 3.1 % av NVIDIA, 2.8 % av Facebook, 2.3 % - SUSE, 2.1 % - IBM, 1.9 % - Oracle, 1.5 % - ARM, 1.4 % - Canonical. 13.2 % av endringene ble utarbeidet av uavhengige bidragsytere eller utviklere som ikke eksplisitt erklærte at de jobbet for enkelte selskaper. 1.3 % av endringene ble utarbeidet av studenter, hovedfagsstudenter og representanter for utdanningsinstitusjoner. Når det gjelder antall 5.13 linjer med kode lagt til kjernen, er AMD lederen, hvis andel var 20.2 % (amdgpu-driveren har omtrent 3 millioner linjer med kode, som er omtrent 10 % av den totale kjernestørrelsen - 2.4 millioner linjer blir gjort rede for av automatisk genererte header-filer med data for GPU-registre ).

Kilde: opennet.ru

Legg til en kommentar