Jedro Linuxa je staro 29 let

25. avgusta 1991 je po petih mesecih razvoja 21-letni študent Linus Torvalds napovedal v novičarski skupini comp.os.minix o ustvarjanju delujočega prototipa novega operacijskega sistema Linux, za katerega je bil opažen dokončanje prenosa bash 1.08 in gcc 1.40. Prva javna izdaja jedra Linuxa je bila objavljena 17. septembra. Jedro 0.0.1 v stisnjeni obliki je imel velikost 62 KB in je vseboval približno 10 tisoč vrstic izvorne kode. Sodobno jedro Linuxa ima več kot 26 milijonov vrstic kode. Glede na študijo iz leta 2010, ki jo je naročila Evropska unija, bi bili približni stroški razvoja projekta iz nič, podobnega sodobnemu jedru Linuxa, več kot milijardo ameriških dolarjev (izračun je bil narejen, ko je imelo jedro 13 milijonov vrstic kode), glede na drugi ocene - več kot 3 milijarde.

Jedro Linuxa se je zgledovalo po operacijskem sistemu MINIX, ki pa Linus zaradi omejene licence ni bil všeč. Kasneje, ko je Linux postal dobro znan projekt, so nepridipravi poskušali obtožiti Linusa, da neposredno kopira kodo nekaterih podsistemov MINIX. Napad je odbil Andrew Tanenbaum, avtor MINIX-a, ki je enemu od svojih študentov naročil, da izvede podrobno primerjavo kode Minix in prvih javnih različic Linuxa. Ugotovitve raziskava je pokazala le štiri manjše ujemanje blokov kode zaradi zahtev POSIX in ANSI C.

Linus je prvotno mislil, da bi jedro poimenoval Freax, iz besed "free", "freak" in X (Unix). Toda jedro je dobilo ime "Linux" po zaslugi Arija Lemmkeja, ki je na Linusovo zahtevo postavil jedro na FTP strežnik univerze, imenik z arhivom pa ni poimenoval »freax«, kot je zahteval Torvalds, ampak »linux«. Omembe vredno je, da je podjetni poslovnež William Della Croce uspel registrirati blagovno znamko Linux in je čez čas želel pobrati licenčnine, a si je kasneje premislil in vse pravice do blagovne znamke prenesel na Linusa. Kot rezultat je bila izbrana uradna maskota jedra Linuxa, pingvin Tux tekmovanja, ki je potekal leta 1996. Ime Tux pomeni Torvalds UniX.

Dinamika rasti kodne baze (število vrstic izvorne kode) jedra:

  • 0.0.1 - september 1991, 10 tisoč vrstic kode;
  • 1.0.0 - marec 1994, 176 tisoč vrstic kode;
  • 1.2.0 - marec 1995, 311 tisoč vrstic kode;
  • 2.0.0 - junij 1996, 778 tisoč vrstic kode;
  • 2.2.0 - januar 1999, 1.8 milijona vrstic kode;
  • 2.4.0 - januar 2001, 3.4 milijona vrstic kode;
  • 2.6.0 - december 2003, 5.9 milijona vrstic kode;
  • 2.6.28 - december 2008, 10.2 milijona vrstic kode;
  • 2.6.35 - avgust 2010, 13.4 milijona vrstic kode;
  • 3.0 - avgust 2011, 14.6 milijona vrstic kode.
  • 3.5 - julij 2012, 15.5 milijona vrstic kode.
  • 3.10 - julij 2013, 15.8 milijona vrstic kode;
  • 3.16 - avgust 2014, 17.5 milijona vrstic kode;
  • 4.1 - junij 2015, 19.5 milijona vrstic kode;
  • 4.7 - julij 2016, 21.7 milijona vrstic kode;
  • 4.12 - julij 2017, 24.1 milijona vrstic kode;
  • 4.18 - avgust 2018, 25.3 milijona vrstic kode.
  • 5.2 - julij 2019, 26.55 milijona vrstic kode.
  • 5.8 - avgust 2020, 28.36 milijona vrstic kode.

Napredek osnovnega razvoja:

  • Linux 0.0.1 - september 1991, prva javna izdaja, ki podpira samo CPU i386 in zagon z diskete;
  • Linux 0.12 - januar 1992, koda se je začela distribuirati pod licenco GPLv2;
  • Linux 0.95 - marec 1992, dodana zmožnost zagona sistema X Window, implementirana podpora za navidezni pomnilnik in izmenjalno particijo.
  • Linux 0.96-0.99 - 1992-1993, začelo se je delo na omrežnem skladu. Predstavljen je bil datotečni sistem Ext2, dodana je bila podpora za datotečni format ELF, predstavljeni so bili gonilniki za zvočne kartice in krmilnike SCSI, implementirano je bilo nalaganje modulov jedra in datotečni sistem /proc.
  • Leta 1992 so se pojavile prve distribucije SLS in Yggdrasil. Poleti 1993 sta bila ustanovljena projekta Slackware in Debian.
  • Linux 1.0 - marec 1994, prva uradno stabilna izdaja;
  • Linux 1.2 - marec 1995, znatno povečanje števila gonilnikov, podpora za platforme Alpha, MIPS in SPARC, razširjene zmogljivosti omrežnega sklada, pojav paketnega filtra, podpora za NFS;
  • Linux 2.0 - junij 1996, podpora za večprocesorske sisteme;
  • Marec 1997: LKML, ustanovljen poštni seznam razvijalcev jedra Linuxa;
  • 1998: lansiranje prve gruče Top500 na osnovi Linuxa, sestavljene iz 68 vozlišč s procesorji Alpha;
  • Linux 2.2 - januar 1999, izboljšana učinkovitost sistema za upravljanje pomnilnika, dodana podpora za IPv6, implementiran nov požarni zid, uveden nov zvočni podsistem;
  • Linux 2.4 - februar 2001, podpora za 8-procesorske sisteme in 64 GB RAM-a, datotečni sistem Ext3, podpora USB, ACPI;
  • Linux 2.6 - december 2003, podpora za SELinux, orodja za samodejno uravnavanje parametrov jedra, sysfs, preoblikovan sistem za upravljanje pomnilnika;
  • Leta 2005 je bil predstavljen hipervizor Xen, ki je začel dobo virtualizacije;
  • Septembra 2008 je nastala prva izdaja platforme Android, ki temelji na jedru Linux;
  • Julija 2011, po 10 letih razvoja veje 2.6.x izvajati prehod na številčenje 3.x. Število predmetov v skladišču Git je doseglo 2 milijona;
  • V letu 2015 potekal izdaja jedra Linuxa 4.0. Število objektov git v repozitoriju je doseglo 4 milijone;
  • Aprila 2018 leta premagati mejnik 6 milijonov git objektov v repozitoriju jedra.
  • Januarja 2019 je bila ustanovljena veja jedra Linux 5.0. Repozitorij je dosegel 6.5 milijona predmetov git.
  • Jedro 2020 je bilo objavljeno avgusta 5.8 je bila največje po številu sprememb med vsemi jedri v celotnem obstoju projekta.

Vir: opennet.ru

Dodaj komentar