Хабрахабр

Вся история Linux. Часть I: с чего все началось

В этом году ядру Linux исполняется 27 лет. ОС на его базе используют многие корпорации, государственные, исследовательские учреждения и дата-центры по всему миру.

В этой серии материалов мы решили выделить наиболее значимые и интересные факты, связанные с этой операционной системой. За более чем четверть века вышло немало статей (в том числе и на Хабре), рассказывающих о разных отрезках истории Linux.

Начнем с разработок, которые предшествовали Linux, и истории появления первой версии ядра.


/ Flickr / Toshiyuki IMAI / CC BY-SA

Эпоха «свободного рынка»

Появление Linux считается одним из важнейших событий в истории открытого ПО. Рождение этой операционной системы во многом обязано идеям и инструментам, которые формировались и «зрели» десятилетиями в среде разработчиков. Поэтому для начала обратимся к истокам «опенсорсного движения».

Это делалось с целью упрощения обмена знаниями в научной среде. На заре 50-х большая часть программного обеспечения в США создавалась сотрудниками университетов и лабораторий и распространялась без каких-либо ограничений. Первым опенсорсным решением того периода считается система A-2, написанная для ЭВМ UNIVAC Remington Rand в 1953 году.

Они работали по модели «совместного однорангового производства». В те же годы сформировалась первая группа разработчиков свободного ПО — SHARE. Результатом труда этой группы ближе к концу 50-х стала одноименная ОС.

Благодаря политике открытости они могли предложить клиентам не только аппаратное, но и программное обеспечение без дополнительных затрат. Эта система (и другие продукты SHARE) пользовалась популярностью у производителей компьютерного оборудования.

Приход коммерции и рождение Unix

В 1959 году компания Applied Data Research (ADR) получила заказ от организации RCA — написать программу для автозаполнения блок-схем. Разработчики выполнили работу, но не сошлись с RCA в цене. Чтобы не «выбрасывать» готовый продукт, в ADR переделали решение для платформы IBM 1401 и начали самостоятельно его реализовывать. Однако продажи шли не очень хорошо, так как многие пользователи ждали бесплатную альтернативу решению ADR, которую планировали в IBM.

Поэтому разработчик Мартин Гетц (Martin Goetz) из ADR подал патент на программу и в 1968 году первым в истории США получил его. В ADR не могли допустить выпуск бесплатного продукта с аналогичной функциональностью. С этого момента принято отсчитывать эпоху коммерциализации в индустрии разработки — из «бонуса» к оборудованию ПО превратилось в самостоятельный продукт.

Unix создавали в качестве альтернативы другой ОС — Multics. Приблизительно в то же время небольшая команда программистов из Bell Labs начала работу над операционной системой для мини-компьютера PDP-7 — Unix.

Последняя была слишком сложной и работала только на платформах GE-600 и Honeywell 6000. Переписанная на языке СИ Unix должна была стать портативной и более простой в использовании (во многом благодаря иерархической файловой системе с единым корневым каталогом).

По этой причине первые пользователи Unix — научные организации — получали исходный код ОС бесплатно. В 50-х холдинг AT&T, в состав которого на тот момент входила Bell Labs, подписал соглашение с правительством США, запрещающее корпорации продавать программное обеспечение.

В результате вынужденного разделения корпорации на несколько компаний запрет на продажу ПО перестал действовать, и холдинг прекратил бесплатное распространение Unix. AT&T отдалилась от концепции свободного распространения ПО в начале 80-х. Угрозы не были беспочвенными — с 1980 года компьютерные программы стали объектом авторского права в США. Разработчикам грозили исками за несанкционированный обмен исходным кодом.

Поисками альтернативного решения занялась группа энтузиастов из Калифорнийского университета в Беркли. Не всех разработчиков устраивали условия, которые диктовали в AT&T. В 70-х учебное заведение получило лицензию от AT&T, и энтузиасты начали создавать на его основе новый дистрибутив, который впоследствии стал Unix Berkeley Software Distribution, или BSD.

Компания подала в суд, и авторам BSD пришлось удалить и заменить весь задействованный исходный код Unix. Открытая Unix-подобная система возымела успех, на что сразу обратили внимание в AT&T. Последняя версия системы вышла в 1994 году, но сам факт появления свободной и открытой ОС стал важной вехой в истории опенсорсных проектов. Это немного замедлило распространение Berkeley Software Distribution в те годы.


/ Flickr / Christopher Michel / CC BY / Фото обрезано

Назад — к истокам свободного ПО

В конце 70-х сотрудники Массачусетского технологического института написали драйвер для принтера, установленного в одной из аудиторий. Когда бумага застревала и создавалась очередь из заданий на печать, пользователи получали уведомление с просьбой устранить проблему. Позже в отделе появился новый принтер, для которого сотрудники захотели добавить такую функцию. Но для этого нужен был исходный код первого драйвера. Штатный программист Ричард Мэттью Столлман (Richard M. Stallman) запросил его у коллег, но получил отказ — выяснилось, что это конфиденциальная информация.

Столлман негодовал из-за сложившегося положения вещей. Этот незначительный эпизод, возможно, стал одним из судьбоносных в истории свободного ПО. Поэтому Столлман решил создать открытую операционную систему и позволить энтузиастам свободно вносить в нее изменения. Его не устраивали ограничения, накладываемые на обмен исходным кодом в ИТ-среде.

В его основе лежал манифест, который послужил и базисом для лицензии на свободное программное обеспечение — GNU General Public License (GPL). В сентябре 1983 года он объявил о создании проекта GNU — GNU’s Not UNIX («GNU не Unix»). Этот шаг стал началом активного движения за открытое ПО.

Tanenbaum) в качестве учебного пособия разработал Unix-подобную систему Minix. Несколько лет спустя профессор Амстердамского свободного университета Эндрю Таненбаум (Andrew S. Издатель его книги, к которой прилагалась ОС, настаивал хотя бы на номинальной плате за работу с системой. Он хотел сделать ее максимально доступной для студентов. В начале 90-х Minix завоевала популярность среди разработчиков. Эндрю и издатель пришли к компромиссу по цене лицензии в $69. И ей было суждено стать основой для разработки Linux.


/ Flickr / Christopher Michel / CC BY

Рождение Linux и первых дистрибутивов

В 1991 году молодой программист из Хельсинкского университета Линус Торвальдс осваивал Minix. Его эксперименты с ОС переросли в работу над совершенно новым ядром. 25 августа Линус устроил открытый опрос группы пользователей Minix о том, что их не устраивает в этой ОС, и анонсировал разработку новой операционной системы. В августовском письме есть несколько важных тезисов о будущей ОС:

  • система будет бесплатной;
  • система будет похожа на Minix, но исходный код будет абсолютно другим;
  • система не будет «большой и профессиональной, как GNU».

25 августа принято считать днем рождения Linux. Сам Линус ведет отсчет от другой даты — 17 сентября. Именно в этот день он загрузил первый релиз Linux (0.01) на FTP-сервер и отправил электронное письмо людям, проявившим интерес к его анонсу и опросу. В исходном коде первого релиза сохранилось слово «Freaks». Так Торвальдс планировал назвать свое ядро (комбинация слов «free», «freak» и Unix). Администратору FTP-сервера не понравилось название, и он переименовал проект в Linux.

В октябре того же года была выпущена версия ядра 0. Далее последовала череда обновлений. 11. 02, а в декабре — 0. Это означало, что разработчики могли пользоваться ядром, модифицировать его, но не имели права перепродавать результаты своих трудов. Изначально Linux распространялся без лицензии GPL. 12 Торвальдс изменил лицензию на GNU GPL v2. Начиная с февраля 1992 года, все коммерческие ограничения были сняты — с релизом версии 0. Этот шаг Линус позже назвал одним из определяющих факторов успеха Linux.

Некоторое время обсуждения велись в фиде comp.os.minix сети Usenet. Популярность Linux в среде разработчиков Minix росла. Причина, по его мнению, заключалась в монолитном ядре ОС, которое по ряду параметров уступает микроядру Minix. В начале 92-го создатель Minix Эндрю Таненбаум запустил в сообществе спор об архитектуре ядер, заявив, что «Linux устарел». В полемику вступил сам Линус и пользователи обеих ОС. Еще одна претензия Таненбаума касалась «привязки» Linux к линейке процессоров x86, которая, по прогнозам профессора, должна была кануть в небытие в ближайшее время. В результате спора сообщество разделилось на два лагеря, а у приверженцев Linux появился свой фид — comp.os.linux.

Самые ранние версии Linux умещались на двух дискетах и состояли из загрузочного диска с ядром и корневого диска, который устанавливал файловую систему и несколько базовых программ из инструментария GNU. Сообщество занималось расширением функциональности базовой версии — разрабатывались первые драйверы, файловая система.

Большинство ранних версий создавались энтузиастами, а не компаниями. Постепенно сообщество начало разрабатывать первые дистрибутивы на базе Linux.

Первый дистрибутив — MCC Interim Linux — был создан на основе версии 0.12 в феврале 1992 года. Его автор — программист из Компьютерного центра университета Манчестера — назвал разработку «экспериментом» с целью устранить некоторые недостатки в процедуре установки ядра и добавить ряд функций.

Многие из них остались локальными проектами, «прожившими» не более пяти лет, например, Softlanding Linux System (SLS). Вскоре после этого число пользовательских дистрибутивов значительно возросло. В 1993 году состоялся релиз двух дистрибутивов — Slackware и Debian, — которые дали старт серьезным переменам в индустрии свободного ПО. Однако были и дистрибутивы, которым удалось не только «закрепиться» на рынке, но и во многом повлиять на дальнейшее развитие опенсорсных проектов.

Он задумывался как «изящная» альтернатива SLS. Debian создал Иан Мердок (Ian Murdock) при поддержке Free Software Foundation Столлмана. На его основе, в свою очередь, был создан ряд других важных для истории ядра дистрибутивов — например, Ubuntu. Debian поддерживается по сей день и является одной из самых популярных разработок на базе Linux.

Его первая версия вышла в 1993 году. Что касается Slackware, это — еще один ранний и успешный проект на базе Linux. И десятилетия спустя дистрибутив оставался популярным среди разработчиков. По некоторым оценкам, через два года на долю Slackware приходилось уже около 80% установок Linux.

Она первой начала выпускать продукты на базе Linux для бизнес-клиентов. В 1992-м в Германии была основана компания SUSE (аббревиатура от Software- und System-Entwicklung — разработка программного обеспечения и систем). Первым дистрибутивом, с которым стали работать SUSE, как раз был Slackware, адаптированный для немецкоязычных пользователей.

Именно с этого момента начинается эпоха коммерциализации в истории Linux, о которой мы поговорим в следующей статье.

Посты из корпоративного блога 1cloud.ru:

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть