На 25 август 1991 г. след пет месеца разработки, 21-годишният студент Линус Торвалдс обяви в телеконференцията comp.os.minix за създаването на работен прототип на новата операционна система Linux, за която беше отбелязано завършването на портването на bash 1.08 и gcc 1.40. Първото публично издание на ядрото Linux беше представено на 17 септември. Ядро 0.0.1 беше с размер 62 Кб в компресирано състояние и съдържаше около 10 хиляди реда изходен код. Съвременното ядро Linux съдържа около 41 милиона реда код.
Linux ядрото беше създадено под впечатлението от операционната система MINIX, която не удовлетворяваше Линус поради ограничената си лицензия. По-късно, когато Linux стана известен проект, злонамерени критици се опитаха да обвинят Линус в директно копиране на кода на някои подсистеми на MINIX. Нападението бе отблъснато от Андрю Таненбаум, автора на MINIX, който възложи на един от студентите да направи подробно сравнение между кода на Minix и първите публични версии на Linux. Резултатите от изследването показаха наличието само на четири незначителни съвпадения на блокове код, обусловени от изискванията на POSIX и ANSI C.
В началото Линус искал да нарече ядрото Freax, от думите "free", "freak" и X (Unix). Но ядро получи името "Linux" с леката помощ на Ари Лемке (Ari Lemmke), който по молба на Линус постави ядрото на FTP-сървъра на университета, наричайки директорията с архива не "freax", както беше поискал Торвалдс, а "linux". Забележително е, че предприемчивият бизнесмен Уилям Делло Крок (William Della Croce) успя да регистрира търговска марка Linux и искаше с времето да събира такси, но по-късно се отказа и прехвърли всички права на търговската марка на Линус. Официалният талисман на ядрото Linux, пингвинът Tux, бе избран в резултат на конкурс, проведен през 1996 година. Името Tux се разшифрова като Torvalds UniX.
Динамиката на растежа на кода (броя на редове изходен код) на ядрото:
- 0.0.1 — септември 1991, 10 хил. реда код;
- 1.0.0 — март 1994, 176 хил. реда код;
- 1.2.0 — март 1995, 311 хил. реда код;
- 2.0.0 — юни 1996, 778 хил. реда код;
- 2.2.0 — януари 1999, 1.8 млн. реда код;
- 2.4.0 — януари 2001, 3.4 млн. реда код;
- 2.6.0 — декември 2003, 5.9 млн. реда код;
- 2.6.28 — декември 2008, 10.2 млн. реда код;
- 2.6.35 — август 2010, 13.4 млн. реда код;
- 3.0 — август 2011, 14.6 млн. реда код;
- 3.5 — юли 2012, 15.5 млн. реда код;
- 3.10 — юли 2013, 15.8 млн. реда код;
- 3.16 — август 2014, 17.5 млн. реда код;
- 4.1 — юни 2015, 19.5 млн. реда код;
- 4.7 — юли 2016, 21.7 млн. реда код;
- 4.12 — юли 2017, 24.1 млн. реда код;
- 4.18 — август 2018, 25.3 млн. реда код;
- 5.2 — юли 2019, 26.55 млн. реда код;
- 5.8 — август 2020, 28.4 млн. реда код;
- 5.13 — юни 2021, 29.2 млн. реда код;
- 5.19 — август 2022, 30.5 млн. реда код;
- 6.4 — юни 2023, 32.9 млн. реда код.
- 6.10 — юли 2024, 35.1 млн. реда код.
- 6.16 — юли 2025, 40.8 млн. реда код.
Напредък в развитието на ядрото:
- Linux 0.0.1 — септември 1991, първо публично издание, поддържащо само CPU i386 и зареждащо се от флопи диск;
- Linux 0.12 — януари 1992, кодът започва да се разпространява под лиценз GPLv2;
- Linux 0.95 — март 1992, осигурена е възможността за стартиране на X Window System, реализирана е поддръжка на виртуална памет и дял за разширена памет.
- Linux 0.96-0.99 — 1992-1993, започна разработката на мрежовия стек. Представена е файлова система Ext2, добавена е поддръжка на файлов формат ELF, представени са драйвери за звукови карти и контролери SCSI, реализирано е зареждането на модули на ядрото и файловата система /proc.
- През 1992 година се появяват първите дистрибуции SLS и Yggdrasil. През лятото на 1993 година са основани проектите Slackware и Debian.
- Linux 1.0 — март 1994, първото официално стабилно издание;
- Linux 1.2 — март 1995, значително увеличение на броя на драйверите, поддръжка на платформите Alpha, MIPS и SPARC, разширени възможности на мрежовия стек, появата на пакетен филтър, поддръжка на NFS;
- Linux 2.0 — юни 1996 година, поддръжка на многопроцесорни системи;
- Март 1997: основан е LKML, списък с разпратки на разработчиците на ядрото на Linux;
- 1998 година: стартира първият кластер на базата на Linux, попаднал в списъка Top500, състоящ се от 68 възела с CPU Alpha;
- Linux 2.2 — януари 1999, увеличена ефективност на системата за управление на паметта, добавена поддръжка на IPv6, реализиран нов междупрограмно защитен софтуер, представена нова аудиосистема;
- Linux 2.4 — февруари 2001, осигурена е поддръжка на 8-процесорни системи и 64 Гб RAM, файлова система Ext3, поддръжка на USB, ACPI;
- Linux 2.6 — декември 2003, поддръжка на SELinux, средства за автоматично настройване на параметрите на ядрото, sysfs, преработена система за управление на паметта;
- През 2005 г. беше представен хипервизорът Xen, който откри ерата на виртуализацията;
- През септември 2008 г. беше създаден първият релиз на платформата Android, основана на ядрото Linux;
- През юли 2011 г. след 10 години развитие на клон 2.6.x беше направен преход към нумерация 3.x. Броят на обектите в Git репозитория достигна 2 млн;
- През 2015 г. беше пуснато ядрото на Linux 4.0. Броят на git обектите в репозитория достигна 4 млн;
- През април 2018 г. беше преминат прагът от 6 млн. git обекта в репозитория на ядрото.
- През януари 2019 г. беше създаден клон на ядрото Linux 5.0. Репозитория достигна 6.5 млн. git обекта.
- Публикуваното през август 2020 г. ядро 5.8 стана най-голямото по брой промени от всички ядра в историята на проекта.
- В ядрото 5.13 беше поставен рекорд по брой на разработчиците (2150), промени от които влязоха в състава на ядрото.
- През август 2022 г. беше създаден клон на ядрото Linux 6.0, тъй като в клона 5.x се натрупаха достатъчно версии, за да се промени първото число в номера на версията.
- В ядрото 6.1, пуснато през декември 2022 г., беше добавена възможността да се използва езикът Rust като втори език за разработка на драйвери и модули на ядрото.
- През февруари 2025 г. беше достигната границата от 40 милиона реда изходен код.
Около 65% от всички изменения в ядрото са направени от 20-те най-активни компании. Например, при разработката на ядрото 6.16 от всички изменения 11.3% (преди година в ядрото 6.10 беше 15.3%) са подготвени от компанията Intel, 7.6% (6.9%) — Red Hat, 6.3% (7.4%) — Google, 5.6% (6.3%) — Linaro, 5.4% (4.6%) — AMD, 3.6% (1.9%) — Qualcomm, 3.0% (2.5%) — SUSE, 2.9% (3.2%) — Meta, 2.6% (3.3%) — Oracle, 2.4% (2.3%) — Huawei, 2.4% (1.5%) — NVIDIA, 2.3% (1.2%) — ARM, 1.4% (2.4%) — IBM. 15.3% (11.9%) от измененията са подготвени от независими участници или разработчици, които явно не са обявили работата си за определени компании. По броя на добавените в ядрото 6.16 редове код водят компаниите Intel, Red Hat и Google, чиято част съставлява 9.2%, 7.2% и 6.9% (в ядрото 6.10 водеха Intel, Linaro и Red Hat с части 13.6%, 13.3% и 7.2%).
Източник: opennet.ru
