На 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, от думите „безплатен“, „фрик“ и X (Unix). Но името „Linux“ ядрото получи по искане на Ари Лемке, който по молба на Линус сложи ядрото на FTP сървъра на университета, наричайки директорията с архива не „freax“, както искаше Торвалдс, а „linux“. Забележително е, че предприемчивият бизнесмен Уилям Делло Крок успя да регистрира търговската марка 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, реализирана е поддръжка на виртуална памет и swap файл.
- 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 обекта.
- Ядрото 5.8, публикувано през август 2020 година, стана най-голямото по брой изменения за всички времена от съществуването на проекта.
- В ядрото 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
