Ядру Linux исполнилось 20 лет
25 августа 2011 года
Сегодня отмечается официальный день рождения Linux. После 5 месяцев разработки 25 августа 1991 года 21-летний студент Линус Торвальдс объявил в телеконференции comp.os.minix о создании рабочего прототипа новой операционной системы Linux для которой было отмечено завершение портировния bash 1.08 и gcc 1.40.
Новое ядро было создано под впечатлением от операционной системы MINIX, которая не устраивала Линуса своей ограниченной лицензией. Впоследствии, когда Linux стал известным проектом, недоброжелатели пытались обвинить Линуса в прямом копировании кода некоторых подсистем MINIX. Нападение отразил Эндрю Таненбаум, автор MINIX, который поручил одному из студентов провести детальное сравнение кода Minix и первых публичных версий Linux. Результаты исследования показали наличие только 4 несущественных совпадений блоков кода, обусловленных требованиями POSIX и ANSI C.
Первоначально Линус задумал назвать ядро Freax, от слов "free", "freak" и X (Unix). Но имя Linux ядро получило с легкой руки Ари Лемке (Ari Lemmke), который по просьбе Линуса разместил ядро на своем FTP-сервере, назвав директорию с архивом не "freax" как просил Торвальдс, а "linux". Примечательно, что предприимчивый делец Вильям Делло Крок (William Della Croce) сумел зарегистрировать торговую марку Linux и хотел со временем собирать отчисления, но позднее передумал и передал все права на торговую марку Линусу. Официальный талисман Linux ядра, пингвин Tux, был выбран в результате соревнования, состоявшегося в 1996 году. Имя Tux расшифровывается как Torvalds UniX.
Первый публичный выпуск ядра Linux был представлен 17 сентября. Ядро 0.0.1 (Архивная копия от 25 января 2021 на Wayback Machine) имело размер 62 Кб в сжатом виде и содержало около 10 тыс. строк кода (для сравнения gzip архив ядра 3.0 занимает в 1500 раз больше - 92 Мб). Лично Линусом Торвальдсом написано менее 2% от всего кода современного ядра. По данным исследования, проведенного по заказу Евросоюза, приблизительная стоимость разработки с нуля проекта аналогичного ядру Linux составила бы более миллиарда долларов.
Ниже представлена статистика с отражением динамики роста кодовой базы ядра:
- 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 млн. строк кода.
Прогресс, развития ядра:
- 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 года, запущен первый попавший в список Top500 кластер на базе Linux, состоящий из 68 узлов с CPU Alpha;
- Linux 2.2 - январь 1999, увеличена эффективность системы управления памятью, добавлена поддержка IPv6, реализован новый межсетевой экран, представлена новая звуковая подсистема;
- Linux 2.4 - февраль 2001, обеспечена поддержка 8-процессорных систем и 64 Гб ОЗУ, файловая система Ext3, поддержка USB, ACPI;
- Linux 2.6 - декабрь 2003, поддержка SELinux, средства автоматического тюнинга параметров ядра, sysfs, переработанная система управления памятью;
- В 2005 году представлен гипервизор Xen, который открыл эру виртуализации.
Подробно история зарождения Linux изложена в первой части книги "Just for fun". Сегодня подходящий день, для того чтобы перечитать данную книгу и проникнуться духом того времени.
Источники
правитьЛюбой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.