25. avgusta 1991. godine, nakon pet meseci razvoja, 21-godišnji student Linus Torvalds je na telekonferenciji comp.os.minix najavio stvaranje radnog prototipa nove operativnog sistema Linux, za koji je zabeleženo završavanje portovanja bash 1.08 i gcc 1.40. Prvo javno izdanje jezgra Linux je predstavljeno 17. septembra. Jezgro 0.0.1 je imalo veličinu od 62 KB u komprimovanom obliku i sadržalo je oko 10.000 linija izvornog koda. Savremeno jezgro Linuxa broji više od 35 miliona linija koda. Prema istraživanju koje je 2010. godine sprovedeno po nalogu Evropske unije, približna cena razvoja projekta sličnog savremenom jezgru Linux bila bi preko milijardu američkih dolara (izračunato je kada je jezgro imalo 13 miliona linija koda), dok druge procene govore o više od 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 milijona vrstice kode;
- 5.2 — julij 2019, 26,55 milijona vrstice kode;
- 5.8 — avgust 2020, 28,4 milijona vrstice kode;
- 5.13 — junij 2021, 29,2 milijona vrstice kode;
- 5.19 — avgust 2022, 30,5 milijona vrstice kode;
- 6.4 — junij 2023, 32,9 milijona vrstice kode.
- 6.10 — julij 2024, 35,1 milijona vrstice kode.
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 efikasnost sistema upravljanja memorijom, dodata podrška 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.
- Avgusta 2022 je bila oblikovana veja jedra Linux 6.0, ker je v veji 5.x nastalo dovolj izdaj za zamenjavo prve številke v različici.
- V jedru 6.1, izdano decembra 2022, je bila dodana možnost uporabe jezika Rust kot drugega jezika za razvoj gonilnikov in modulov jedra.
Otprilike 65% svih promena u jezgru su napravljene od strane 20 najaktivnijih kompanija. Na primer, prilikom razvoja jezgra 6.10, od svih promena 15.3% (u jezgru 6.9 je bilo 12.9%) pripremila je kompanija Intel, 7.4% (7.1%) – Google, 6.9% (5.6%) – Red Hat, 6.3% (6.4%) – Linaro, 4.6% (5.7%) – AMD, 3.3% (2.2%) – Oracle, 3.2% (2.9%) – Meta, 2.5% (3.2%) – SUSE, 2.4% (2.1%) – IBM, 2.3% (2.4%) – Huawei, 1.9% (2.1%) – Qualcomm, 1.5% (1.7%) – NVIDIA, 1.2% (1.2%) – ARM. 11.9% (u jezgru 6.9 – 14.2%) promena su pripremljene od strane nezavisnih učesnika ili programera, koji nisu izričito naveli svoje radno mesto u određenim kompanijama. Po broju dodatih linija koda u jezgro 6.10, vodeće kompanije su Intel, Linaro i Red Hat, čiji su udeo bili 13.6%, 13.3% i 7.2% (u jezgru 6.9 su dominirali AMD, Red Hat i Intel sa udelima 21.7%, 11.5% i 8.9%).
Izvor: opennet.ru
