25 августа 1991 года после пяти месяцев разработки 21-летний студент Линус Торвальдс в телеконференции comp.os.minix о создании рабочего прототипа новой операционной системы Linux, для которой было отмечено завершение портирования bash 1.08 и gcc 1.40. Первый публичный выпуск ядра Linux был представлен 17 сентября. Ядро имело размер 62 Кб в сжатом виде и содержало около 10 тысяч строк исходного кода. Современное ядро Linux насчитывает более 26 млн строк кода. По данным исследования, проведённого в 2010 году по заказу Евросоюза, приблизительная стоимость разработки с нуля проекта, аналогичного современному ядру Linux, составила бы долларов США (расчёт производился, когда в ядре было 13 млн строк кода), по оценкам — .
Ядро Linux было создано под впечатлением от операционной системы MINIX, которая не устраивала Линуса своей ограниченной лицензией. Впоследствии, когда Linux стал известным проектом, недоброжелатели пытались обвинить Линуса в прямом копировании кода некоторых подсистем MINIX. Нападение отразил Эндрю Таненбаум, автор MINIX, который поручил одному из студентов провести детальное сравнение кода Minix и первых публичных версий Linux. исследования показали наличие только четырёх несущественных совпадений блоков кода, обусловленных требованиями POSIX и ANSI C.
Первоначально Линус задумал назвать ядро Freax, от слов «free», «freak» и X (Unix). Но имя «Linux» ядро получило с лёгкой руки Ари Лемке (Ari Lemmke), который по просьбе Линуса разместил ядро на университета, назвав директорию с архивом не «freax», как просил Торвальдс, а «linux». Примечательно, что предприимчивый делец Вильям Делло Крок (William Della Croce) сумел зарегистрировать торговую марку Linux и хотел со временем собирать отчисления, но позднее передумал и передал все права на торговую марку Линусу. Официальный талисман Linux-ядра, пингвин Tux, был выбран в результате , состоявшегося в 1996 году. Имя Tux расшифровывается как Torvalds UniX.
Dinamica di crescita della base di codice (numero di righe di codice sorgente) del kernel:
- 0.0.1 — settembre 1991, 10.000 righe di codice;
- 1.0.0 — marzo 1994, 176.000 righe di codice;
- 1.2.0 — marzo 1995, 311.000 righe di codice;
- 2.0.0 — giugno 1996, 778.000 righe di codice;
- 2.2.0 — gennaio 1999, 1.8 milioni di righe di codice;
- 2.4.0 — gennaio 2001, 3.4 milioni di righe di codice;
- 2.6.0 — dicembre 2003, 5.9 milioni di righe di codice;
- 2.6.28 — dicembre 2008, 10.2 milioni di righe di codice;
- 2.6.35 — agosto 2010, 13.4 milioni di righe di codice;
- 3.0 — agosto 2011, 14.6 milioni di righe di codice.
- 3.5 — luglio 2012, 15.5 milioni di righe di codice.
- 3.10 — luglio 2013, 15.8 milioni di righe di codice;
- 3.16 — agosto 2014, 17.5 milioni di righe di codice;
- 4.1 — giugno 2015, 19.5 milioni di righe di codice;
- 4.7 — luglio 2016, 21.7 milioni di righe di codice;
- 4.12 — luglio 2017, 24.1 milioni di righe di codice;
- 4.18 — agosto 2018, 25.3 milioni di righe di codice.
- 5.2 — luglio 2019, 26.55 milioni di righe di codice.
- 5.8 — август 2020, 28.36 млн. строк кода.
Progresso nello sviluppo del kernel:
- Linux 0.0.1 — settembre 1991, primo rilascio pubblico, supporta solo CPU i386 e si avvia da dischetto;
- Linux 0.12 — gennaio 1992, il codice ha iniziato a essere distribuito sotto licenza GPLv2;
- Linux 0.95 — marzo 1992, è stata resa possibile l'esecuzione del sistema X Window, implementato il supporto per la memoria virtuale e lo swap.
- Linux 0.96-0.99 — 1992-1993, iniziato il lavoro sullo stack di rete. È stata introdotta la filesystem Ext2, aggiunto il supporto per il formato di file ELF, presentati driver per schede audio e controller SCSI, implementato il caricamento di moduli del kernel e del filesystem /proc.
- Nel 1992 sono apparsi i primi distribuitivi SLS e Yggdrasil. Nell'estate del 1993 sono stati fondati i progetti Slackware e Debian.
- Linux 1.0 — marzo 1994, primo rilascio ufficialmente stabile;
- Linux 1.2 — marzo 1995, aumento significativo del numero di driver, supporto per le piattaforme Alpha, MIPS e SPARC, espansione delle capacità dello stack di rete, introduzione del filtro a pacchetto, supporto per NFS;
- Linux 2.0 — giugno 1996, supporto per sistemi multiprocessore;
- Marzo 1997: fondata la LKML, mailing list degli sviluppatori del kernel Linux;
- 1998: lanciato il primo cluster basato su Linux, entrato nella lista Top500, composto da 68 nodi con CPU Alpha;
- Linux 2.2 — январь 1999, увеличена эффективность системы управления памятью, добавлена поддержка IPv6, реализован новый межсетевой экран, представлена новая звуковая подсистема;
- Linux 2.4 — febbraio 2001, supporto per sistemi a 8 processori e 64 GB di RAM, filesystem Ext3, supporto USB, ACPI;
- Linux 2.6 — dicembre 2003, supporto per SELinux, strumenti per il tuning automatico dei parametri del kernel, sysfs, sistema di gestione della memoria rielaborato;
- Nel 2005 è stato presentato l'hypervisor Xen, che ha aperto l'era della virtualizzazione;
- A settembre 2008 è stata rilasciata la prima versione della piattaforma Android, basata sul kernel Linux;
- В июле 2011 года после 10 лет развития ветки 2.6.x переход к нумерации 3.x. Число объектов в Git-репозитории достигло 2 млн;
- В 2015 году выпуск ядра Linux 4.0. Число git-объектов в репозитории достигло 4 млн;
- В апреле 2018 года рубеж в 6 млн git-объектов в репозитории ядра.
- В январе 2019 года сформирована ветка ядра . Репозиторий достиг уровня 6.5 млн git-объектов.
- Опубликованное в августе 2020 года ядро 5.8 самым крупным по числу изменений из всех ядер за всё время существования проекта.
Fonte: opennet.ru
