Ядру 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.

Dynamika wzrostu bazy kodu (liczba linii kodu źródłowego) jądra:

  • 0.0.1 — wrzesień 1991, 10 tys. linii kodu;
  • 1.0.0 — marzec 1994, 176 tys. linii kodu;
  • 1.2.0 — marzec 1995, 311 tys. linii kodu;
  • 2.0.0 — czerwiec 1996, 778 tys. linii kodu;
  • 2.2.0 — styczeń 1999, 1.8 mln. linii kodu;
  • 2.4.0 — styczeń 2001, 3.4 mln linii kodu;
  • 2.6.0 — grudzień 2003, 5.9 mln linii kodu;
  • 2.6.28 — grudzień 2008, 10.2 mln linii kodu;
  • 2.6.35 — sierpień 2010, 13.4 mln linii kodu;
  • 3.0 — август 2011, 14.6 млн. строк кода;
  • 3.5 — июль 2012, 15.5 млн. строк кода;
  • 3.10 — lipiec 2013, 15.8 mln linii kodu;
  • 3.16 — sierpień 2014, 17.5 mln linii kodu;
  • 4.1 — czerwiec 2015, 19.5 mln linii kodu;
  • 4.7 — lipiec 2016, 21.7 mln linii kodu;
  • 4.12 — lipiec 2017, 24.1 mln linii kodu;
  • 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 млн. строк кода.

Postęp rozwoju jądra:

  • Linux 0.0.1 — wrzesień 1991, pierwsze publiczne wydanie, obsługujące tylko CPU i386 i uruchamiające się z dyskietki;
  • Linux 0.12 — styczeń 1992, kod zaczął być rozpowszechniany na licencji GPLv2;
  • Linux 0.95 — marzec 1992, zapewniona możliwość uruchamiania systemu X Window, wprowadzono obsługę pamięci wirtualnej i partycji swap.
  • Linux 0.96-0.99 — 1992-1993, rozpoczęto pracę nad stosem sieciowym. Wprowadzono system plików Ext2, dodano obsługę formatu plików ELF, przedstawiono sterowniki dla kart dźwiękowych i kontrolerów SCSI, zrealizowano ładowanie modułów jądra i systemu plików /proc.
  • W 1992 roku pojawiły się pierwsze dystrybucje SLS i Yggdrasil. Latem 1993 roku założono projekty Slackware i Debian.
  • Linux 1.0 — marzec 1994, pierwsze oficjalnie stabilne wydanie;
  • Linux 1.2 — marzec 1995, znaczny wzrost liczby sterowników, wsparcie dla platform Alpha, MIPS i SPARC, rozszerzenie możliwości stosu sieciowego, wprowadzenie filtra pakietów, wsparcie NFS;
  • Linux 2.0 — czerwiec 1996, wsparcie dla systemów wieloprocesorowych;
  • Marzec 1997: założono LKML, listę mailingową deweloperów jądra Linux;
  • Rok 1998: uruchomiono pierwszy klaster oparty na Linuxie, który znalazł się na liście Top500, składający się z 68 węzłów z CPU Alpha;
  • Linux 2.2 — январь 1999, увеличена эффективность системы управления памятью, добавлена поддержка IPv6, реализован новый межсетевой экран, представлена новая звуковая подсистема;
  • Linux 2.4 — luty 2001, zapewniono wsparcie dla systemów ośmioprocesorowych i 64 GB RAM, system plików Ext3, wsparcie dla USB, ACPI;
  • Linux 2.6 — grudzień 2003, wsparcie dla SELinux, narzędzia do automatycznego tuningowania parametrów jądra, sysfs, przearanżowany system zarządzania pamięcią;
  • W 2005 roku wprowadzono hipernadzorcę Xen, co otworzyło erę wirtualizacji;
  • We wrześniu 2008 roku powstało pierwsze wydanie platformy Android, opartej na jądrze 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%).

Źródło: opennet.ru

Kup niezawodny hosting dla stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting dla stron z ochroną przed DDoS, serwery VPS VDS | ProHoster