25. avgusta 1991, po petih mesecih razvoja, je 21-letni študent Linus Torvalds na telekonferenci comp.os.minix oznanil ustvarjanje delujočega prototipa novega operacijskega sistema Linux, za katerega je bilo označeno zaključek portiranja bash 1.08 in gcc 1.40. Prva javna izdaja jedra Linux je bila predstavljena 17. septembra. Jedro 0.0.1 je imelo velikost 62 kB v stisnjeni obliki in vsebovalo približno 10 tisoč vrstic izvorne kode. Sodobno jedro Linux obsega več kot 28 milijonov vrstic kode. Po podatkih raziskave, izvedene leta 2010 po naročilu Evropske unije, bi okvirna strošek razvoja od nule projekta, ki bi bil podoben sodobnemu jedru Linux, znašal več kot milijardo ameriških dolarjev (izračun je bil opravljen, ko je jedro vsebovalo 13 milijonov vrstic kode), po drugih ocenah pa več kot 3 milijarde.
Linux jezgro je stvoreno pod uticajem operativnog sistema MINIX, koji nije zadovoljavao Linusa svojom ograničenom licencom. Kasnije, kada je Linux postao poznati projekat, zlonamernici su pokušali da optuže Linusa za direktno kopiranje koda nekih podsistema MINIX-a. Napad je odbio Andrew Tanenbaum, autor MINIX-a, koji je zatražio od jednog od studenata da sprovede detaljno poređenje koda Minix-a i prvih javnih verzija Linuxa. Rezultati istraživanja pokazali su samo četiri nebitna podudaranja blokova koda, uzrokovana zahtevima POSIX-a i ANSI C.
Prvobitno je Linus planirao da jezgro nazove Freax, od reči „free“, „freak“ i X (Unix). Međutim, ime „Linux“ jezgro je dobilo zahvaljujući Ari Lemmke, koji je na zahtev Linusa postavio jezgro na FTP server univerziteta, nazvavši direktoriju sa arhivom ne „freax“, kako je Torvalds tražio, već „linux“. Zanimljivo je da je preduzimljivi trgovac William Della Croce uspeo da registruje zaštitni znak Linux i želeo je da sakuplja takse, ali se kasnije predomislio i predao sva prava na zaštitni znak Linusu. Službeni maskota Linux jezgra, pingvin Tux, izabran je kao rezultat takmičenja koje se održalo 1996. godine. Ime Tux dekodira se kao Torvalds UniX.
Dinamika rasta kodne baze (broj linija izvorne šifre) jezgra:
- 0.0.1 — septembar 1991, 10.000 linija koda;
- 1.0.0 — mart 1994, 176.000 linija koda;
- 1.2.0 — mart 1995, 311.000 linija koda;
- 2.0.0 — jun 1996, 778.000 linija koda;
- 2.2.0 — januar 1999, 1.8 miliona linija koda;
- 2.4.0 — januar 2001, 3.4 miliona linija koda;
- 2.6.0 — decembar 2003, 5.9 miliona linija koda;
- 2.6.28 — decembar 2008, 10.2 miliona linija koda;
- 2.6.35 — avgust 2010, 13.4 miliona linija koda;
- 3.0 — avgust 2011, 14.6 miliona linija koda.
- 3.5 — jul 2012, 15.5 miliona linija koda.
- 3.10 — jul 2013, 15.8 miliona linija koda;
- 3.16 — avgust 2014, 17.5 miliona linija koda;
- 4.1 — jun 2015, 19.5 miliona linija koda;
- 4.7 — julij 2016, 21,7 milijona vrstice kode;
- 4.12 — julij 2017, 24,1 milijona vrstice kode;
- 4.18 — avgust 2018, 25.3 miliona linija koda.
- 5.2 — jul 2019, 26.55 miliona linija koda.
- 5.8 — avgust 2020, 28.4 miliona linija koda.
- 5.13 — jun 2021, 29.2 miliona linija koda.
Napredek razvoja jedra:
- Linux 0.0.1 — september 1991, prvo javno izdanje, ki podpira le CPU i386 in se zažene s disketne;
- Linux 0.12 — januar 1992, koda se je začela širiti pod licenco GPLv2;
- Linux 0.95 — marec 1992, omogočena zagon X Window System, realizirana podpora za virtualno pomnilnik in swap particijo.
- Linux 0.96-0.99 — 1992-1993, začetek dela na omrežni skladbi. Predstavljen datotečni sistem Ext2, dodana podpora za format datotek ELF, predstavljene gonilnike za zvočne kartice in SCSI kontrolerje, realizirano nalaganje modulov jedra in datotečnega sistema /proc.
- Leta 1992 so se pojavili prvi distribucijski sistemi SLS in Yggdrasil. Poleti 1993 so bili ustanovljeni projekti Slackware in Debian.
- Linux 1.0 — marec 1994, prvi uradno stabilni izda;
- Linux 1.2 — marec 1995, pomembno povečanje števila gonilnikov, podpora platformam Alpha, MIPS in SPARC, širitev zmogljivosti omrežnega sklada, pojav filtriranja paketov, podpora NFS;
- Linux 2.0 — junij 1996, podpora za večprocesorske sisteme;
- Marec 1997: ustanovljen LKML, poštni seznam razvijalcev jedra Linux;
- Leto 1998: zagnan prvi v seznamu Top500 klaster na osnovi Linuxa, sestavljen iz 68 vozlišč s CPU Alpha;
- Linux 2.2 — januar 1999, povečana učinkovitost sistema upravljanja pomnilnika, dodana podrška za IPv6, realiziran nov požarni zid, predstavljena nova zvočna podpora;
- Linux 2.4 — februar 2001, podpora za 8-procesorske sisteme in 64 GB RAM, datotečni sistem Ext3, podpora USB, ACPI;
- Linux 2.6 — december 2003, podpora za SELinux, orodja za avtomatsko optimizacijo parametrov jedra, sysfs, predelava sistema upravljanja pomnilnika;
- Leta 2005 je bil predstavljen hipervizor Xen, ki je odprl dobo virtualizacije;
- Septembra 2008 je bil oblikovan prvi izdelek platforme Android, ki temelji na jedru Linux;
- Julija 2011, po 10 letih razvoja veje 2.6.x je prišlo do prehoda na številčenje 3.x. Število objektov v Git repozitoriju je doseglo 2 milijona;
- V letu 2015 je izšla jedra Linux 4.0. Število git-objektov v skladišču je doseglo 4 milijone;
- Aprila 2018 je bila dosežena meja 6 milijonov git-objektov v skladišču jedra.
- Januarja 2019 je bila oblikovana veja jedra Linux 5.0. Skladišče je doseglo nivo 6.5 milijona git-objektov.
- Jedro 5.8, objavljeno avgusta 2020, je postalo največje po številu sprememb v vseh jedrih doslej.
- V jedru 5.13 je bil postavljen rekord po številu razvijalcev (2150), katerih spremembe so bile vključene v jedro.
- U 2021. godini u granu jezgra Linux-next dodat je kod za razvoj drajvera na jeziku Rust. U toku su radovi na uključivanju komponenti za podršku Rust u glavno jezgro.
68% vseh sprememb v jedro je vneslo 20 najbolj aktivnih podjetij. Na primer, pri razvoju jedra 5.13 je 10% vseh sprememb pripravilo podjetje Intel, 6.5% — Huawei, 5.9% — Red Hat, 5.7% — Linaro, 4.9% — Google, 4.8% — AMD, 3.1% — NVIDIA, 2.8% — Facebook, 2.3% — SUSE, 2.1% — IBM, 1.9% — Oracle, 1.5% — ARM, 1.4% — Canonical. 13.2% sprememb so pripravili neodvisni udeleženci ali razvijalci, ki očitno niso zaslužili svojega dela na določenih podjetjih. 1.3% sprememb so pripravili študenti, doktorandi in predstavniki izobraževalnih ustanov. Po številu dodatnih vrstic kode v jedru 5.13 vodi podjetje AMD, katerega delež je dosegel 20.2% (gonilnik amdgpu obsega približno 3 milijone vrstic kode, kar predstavlja približno 10% od skupne velikosti jedra — 2.4 milijona vrstic je pripisano samodejno generiranim naslovnim datotekam z datoteki za registre GPU).
Izvor: opennet.ru
