Ядру Linux исполнилось 35 лет

25 августа 1991 года после пяти месяцев разработки 21-летний студент Линус Торвальдс объявил в телеконференции comp.os.minix о создании рабочего прототипа новой операционной системы Linux, для которой было отмечено завершение портирования bash 1.08 и gcc 1.40. Первый публичный выпуск ядра Linux был представлен 17 сентября. Ядро 0.0.1 имело размер 62 Кб в сжатом виде и содержало примерно 10 тысяч строк исходного кода. Современное ядро Linux насчитывает около 44 млн строк кода.

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 млн. реда код.
  • 7.2 — август 2026, 43.9 млн. строк кода.

Напредък в развитието на ядрото:

  • 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 милиона реда изходен код.
  • Поддержка Rust переведена из экспериментальных в основные возможности ядра Linux.
  • В 2026 году отмечено продвижение использования AI-инструментов для отладки, рецензирования изменений, выявления ошибок и разработки исправлений в ядре. Среди прочего, AI начал применять Линус Торвальдс, например, на днях для выявления причин проблем в драйвере Intel Xe.

Около 65% всех изменений в ядро внесены 20 наиболее активными компаниями. Например, при разработке ядра 7.1 из всех изменений 9.1% (год назад в ядре 6.16 было 11.3%) подготовлено компанией Intel, 7.7% (6.3%) — Google, 5.2% (5.4%) — AMD, 5.0% (3.6%) — Qualcomm, 4.7% (7.6%) — Red Hat, 3.8% (2.4%) — NVIDIA, 3.4% (2.9%) — Meta, 2.9% (3.0%) — SUSE, 2.5% (2.9%) — Oracle, 2.1% (2.3%) — ARM, 1.4% (1.4%) — IBM, 1.3% (2.4%) — Huawei. 18% (15.3%) изменений подготовлены независимым участниками или разработчиками, явно не заявившим о своей работе на определённые компании. По числу добавленных в ядро 7.1 строк кода лидируют компании Meta, AMD и Qualcomm, доля которых составила 15.8%, 13.8% и 7.6% (в ядре 6.16 лидировали Intel, Red Hat и Google, доля которых составила 9.2%, 7.2% и 6.9%).

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster