Знаете ли вы, что ровно 34 года назад один из самых важных проектов в области программного обеспечения стартовал с скромного сообщения в новой группе на Usenet. Этот проект был ядром Linux, а 21-летний Линус Торвальдс сказал, что это всего лишь хобби и оно не станет большим или профессиональным. Он ошибался.
Торвальдс начал работу над ядром Linux как личное хобби, но не собирался делать его профессиональным. Изначальный проект стартовал в апреле 1991 года, и к июлю 1991 года он работал над пользовательскими аспектами, такими как драйверы устройств и рабочий жёсткий диск. Другими ранними вехами были портирование bash и gcc, и он сделал первые исходники версии 0.01 доступными небольшой группе пользователей в сентябре 1991 года.
Интересно, что самая ранняя версия Linux, версия 0.01, была только исходным кодом и фактически не была запускаемой. Торвальдс говорил, что она была выпущена как символический жест для тех, кто интересовался этим в то время. Ещё одна интересная деталь заключается в том, что ранние версии Linux были непереносимыми и зависели от особенностей i386 и компилятора GCC — примечательно, что поддержка i386 была удалена из ядра в версии 3.8, выпущенной в 2012 году.
Ядро Linux стало действительно полезным в октябре 1991 года, когда была выпущена версия 0.02. Это был значительный шаг как первая пригодная к использованию версия. При этом это всё ещё было «хакерским ядром» с множеством ошибок и отсутствующих функций, таких как драйвер для гибких дисков. Однако оно успешно запускало важные бинарные файлы, такие как bash, gcc и утилиты GNU.
К версии 0.11, выпущенной в декабре 1991 года, система улучшилась благодаря загрузке по требованию, совместному использованию кода/данных, лучшим драйверам и поддержке различных клавиатур и графики. Это также была важная веха, так как впервые включала программы mkfs, fsck и fdisk, что делало ненужным использование Minix для настройки.
Примерно в этот период ядро Linux эволюционировало из соло-проекта в совместный проект с добавлением новых функций, кодируемых другими, таких как управление задачами POSIX от tytso. По мере того как всё больше людей узнавали о Linux, была создана первая рассылка «Linux-activists» вместе с зеркалами для доступа по FTP.
Сообщество помогло решить критическую проблему, связанную с необходимостью запускать систему с меньшим объёмом памяти, что привело Торвальдса к реализации дискового пейджинга. Первоначальный авторский контракт на ядро также был весьма интересным. Он был ограничительным, так как не позволял передавать деньги, что позднее было изменено.
С выпуском версии 0.12 в январе 1992 года ядро стало очень стабильным и начало распространяться быстрее. Версия включала крупные исправления, VM (пейджинг на диск) и управление задачами, удовлетворяя ключевые потребности пользователей. К этому времени Linux выполнял многие задачи лучше, чем Minix, вызывая значительный интерес. После этого номер версии прыгнул с 0.12 до 0.95.
Linux проделал долгий путь с этих ранних выпусков, третья кандидатская версия Linux 6.17 вышла только вчера. Хотя Linux не получил значительного распространения на персональных компьютерах, удерживая около 5% рынка, он добился огромного успеха в других областях. Он широко используется на серверах, питает большую часть облачной инфраструктуры, работает на большинстве суперкомпьютеров мира, находится во многих встроенных устройствах и является основой Android.