355 500 произведений, 25 200 авторов.

Электронная библиотека книг » Алексей Федорчук » Вопросы истории: UNIX, Linux, BSD и другие » Текст книги (страница 1)
Вопросы истории: UNIX, Linux, BSD и другие
  • Текст добавлен: 11 октября 2016, 22:51

Текст книги "Вопросы истории: UNIX, Linux, BSD и другие"


Автор книги: Алексей Федорчук



сообщить о нарушении

Текущая страница: 1 (всего у книги 28 страниц)

Вопросы истории: UNIX, Linux, BSD и другие

Краткий курс для времени угара Алексей Федорчук aka alv
Предисловие

Это попытка последовательного изложения истории UNIX, Linux и свободных ОС вообще, а также связанных с ними графических интерфейсов. Она разделяется на три части: в первой рассматривается история UNIX-подобных операционных систем, во второй – дистрибутивов Linux, в третьей – их интерфейсов. Основана на печатных и сетевых материалах, воспоминаниях очевидцев, устной традиции и личных впечатлениях.

Преамбула

Эта книга сочинялась на протяжении многих лет, начиная, наверное, с первых жней III тысячелетия нашей эры. Однако точка в ней была поставлена в момент, который может стать завершающим в истории всех её объектов и персонажей. В момент, когда сами понятия UNIX и UNIX-подобные операционные системы готовы превратиться в музейные экспонаты. Которые и сами-то представляются ненужными, а уж рассмотрение их истории – и подавно. Ибо, как сказал некогда главный герой наших классиков,

...теперь многие не знают имен героев. Угар НЭПа. Нет того энтузиазма.

Так вот, чтобы напомнить кое-какие имена и события, я и решил собрать воедино все свои прежние записки на исторические темы, причесать их и свести в единую книжку.

Описать историю всех свободных ОС и хотя бы основных их дистрибутивов (не говоря уже о графических системах и приложениях) оказалось задачей, для меня непосильной. Поэтому я ограничил свою задачу в основном теми ОСями, дистрибутивами и графическими системами, с которыми практически работал и за развитием которых следил. В результате в моём повествовании образовался ряд лакун, о наиболее существенны из которых будет сказано в заключении.

Вполне возможно, что я упустил и какие-то другие важные линии развития UNIX, их «подобий» и FOSS вообще. Хотелось бы надеяться, что все эти лакуны будут когда-нибудь восполнены другими авторами, более информированным в этих кругах вопросов, чем я.

Наконец, я полностью и сознательно исключил из своего сочинения историю прикладных программ. Хотя в развитии текстовых редакторов, офисных пакетов и ряда других классов приложений можно найти немало увлекательных сюжетов. Но тут могу оправдаться стопроцентно – словами Козьмы Пруткова, лейтмотивом сочинений которого было:

Нельзя объять необъятное!

Книга не представляет собой описания событий в хронологическом порядке – по причинам, о которых говорится во вступлении к главе первой, это невозможно. Поэтому она разделена на три части, сюжеты которых развиваются параллельно. Первая часть посвящена истории операционных систем семейства UNIX и им подобных – от предпосылок их возникновения до создания Linux, с одной стороны, и развития BSD систем вплоть до нашего времени – с другой.

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

Наконец, в третьей части рассмотрена история графических интерфейсов UNIX-подобных операционок – оконной системы X, менеджеров окон и интегрированных рабочих сред. А в качестве вводного материала затронута история текстовой консоли и интерфейса командной строки, то есть командных оболочек (shell).

Ранее фрагменты их этой книги размещались на разных моих ресурсах, в том числе и на Блогосайте, а также печатались в журнале Linuxfornat с июня 2011 по декабрь 2013 года в виде исторического цикла статей. И все они включены в неё в расширенном, взаимоувязанном и так или иначе переработанном виде. Так что как системная целостность содержание этой книги публикуется впервые.

Референсы

Эта книга предназначена в первую очередь для оффлайнового чтения с ебуков, планшетов и тому подобных смартфонов. Поэтому в её тексте не будет активных ссылок, задумчиво называемых пруфлинками (proof link). Да и смысла в них я не вижу – на самом деле эти самые «пруфы», как правило, ничего не доказывают, а, в лучшем случае, только иллюстрируют сказанное автором. А в некоторых случаях и просто не имеют к нему отношения.

Тем не менее, в основе этого сочинения лежат, разумеется, некоторые источники – материалы официальных сайтов проектов, списки рассылки, актуальные на момент выхода данной версии системы или дистрибутива обзоры, тексты старых книг по UNIX, старые журналы и тому подобные «бумажные» и сетевые материалы. Многие из которых или отыскиваются с трудом, или вовсе недоступны.

Поэтому одним из существенных источников книги стали личные воспоминания и впечатления автора – начиная с 1996 года, он был свидетелем большинства описанных в ней событий, а с 1998 года – и участником некоторых из них. Причём, большая их часть документировалась им «по горячим следам», что нашло отражение в моих журнальных и сетевых публикациях, приводить ссылки на которые было бы скучно. В случае расхождения своих воспоминаний с более иными «первоисточниками», типа Википедии, я, по понятным причинам, отдавал предпочтение первым.

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

Реверансы

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

   • Алексею Костареву – создателю одного из первых в стране Linux-порталов на сайте Невод и автору первой русскоязычной книги, написанной о свободном софте – и исключительно его средствами;

   • Алексею Новодворскому и Алексею Смирнову – основателям IPLabs Linux Team (ныне – фирма Altlinux), стоявшей у истоков Русского Linux'а;

   • Виктору Костромину – создателю Виртуальной энциклопедии «Linux по-русски», хранящей память о всех русскоязычных сетевых материалах, затрагивающих нашу тематику, начиная с 1999 года;

   • Елене Толстяковой, Валентину Синицыну и Кириллу Степанову – сотрудникам редакции журнала LinuxFormat в прошлом и настоящем;

   • участникам Джуйки, форумов POSIX.ru и UNIXforum.org – поимённый их список превысил бы эту книгу по объёму.

Отдельная благодарность – моим коллегам и старым товарищам: Сергею Голубеву, Владимиру Попову, Владимиру Родионову. Все затронутые в книге вопросы многократно обсуждались с ними в реале и виртуале.

И самая большая благодарность, последняя по счёту, но первая по значению: Ирине Киттель, известной как Алиса Деева, вдохновившей меня на завершение этой работы, начатой более десяти лет назад. Со сборником её жизнеутверждающих стихов и разножанровой «малой» прозы заинтересованный читатель может ознакомиться в Библиотеке Блогосайта.

Часть I. История систем

В части первой рассказ пойдёт об истории операционных систем, начиная с предпосылок возникновения BSD и Linux'а. При этом история первых будет доведена почти до наших дней , а история второго – до появления первых его дистрибутивов.

Глава первая. Вопросы праистории

Было бы заманчиво, следуя заветам дедушки Ленина, свести праисторию свободных UNIX-подобных систем к трём истокам и трём составным частям. Однако реальная история чего бы то ни было гораздо сложнее (и интересней), нежели нам пытались внушить классики марксизма и их преложители. Так что с какой стороны ни смотри, а истоков и составных частей Linux'а оказывается куда больше трёх. И к тому же не всегда можно однозначно сказать, где кончаются истоки и начинаются составные части. Если, конечно, не внять мнению резонных людей из Одессы и не признать, что составные части начинаются именно там, где кончаются истоки.

Вступление

В истоках современного мира FOSS лежит целый ряд явлений, исторически независимых, но тесно переплетавшихся во времени. Настолько тесно, что порой трудно определить, где кончается одна история и начинается другая. Если, конечно, не внять мнению резонных людей из Одессы и не признать, что другая история начинается именно там, где кончилась одна.

Оценивать относительную роль каждого из этих явлений в становлении FOSS – занятие бессмысленное: без любого из них FOSS в современном его виде не мог бы ни возникнуть, ни развиваться. Тем более, что все они оказались настолько тесно переплетенными между собой, что разделить их подчас не легче, чем расплести судовой канат. И потому, следуя совету резонных людей, и не будем пытаться этого делать.

Так что дальнейшая история окажется весьма нелинейной. Она распадается на несколько отдельных сюжетов, протягивающихся параллельно, как бы независимо друг от друга – но в тесном взаимовлиянии. Повествователь лишен средств передать это литературными средствами. Остаётся только вспомнить слова, которые часто встречаются в исландских сагах:

События описаны здесь так, как будто они случились друг за другом, хотя некоторые из них случились одновременно.

Вообще, понятие времени в исландских сагах трактуется очень своеобразно: продолжительность его измеряется не какими-то внешними единицами, основанными на вращении небесных тел, а исключительно внутренней насыщенностью событиями. Например, в сагах обычен такой оборот:

Некоторое время после этого ничего не происходило.

Саги – не только литературные произведения, но и исторические источники, хотя и весьма своеобразные. И большая часть того, что в них описывается, происходило на самом деле. Так что иногда по косвенным данным (например, по сопоставлению с собственно историческими источниками из сопредельных стран, содержащих датировки в общепринятом для нас ныне формате) удаётся определить абсолютную продолжительность того «некоторого времени», когда не происходило ничего, заслуживающего быть помещённым в контекст сюжета саги. И оказывается, что такие периоды могли длиться годами, а то и десятилетиями. Для авторов и читателей саг они выпадают из течения времени, находятся вне его. А может быть, как предполагал Стеблин-Каменский, в это время для них времени просто не существовало…

Но потом действие начинает разворачиваться, как отпущенная пружина, – и время появляется вновь: в короткий по абсолютному (то есть внешнему) исчислению его отрезок событий впрессовывается столько событий, что их хватает на целую сагу. Время, измеренное по внутренней, событийной шкале, оказывается чрезвычайно длинным.

И здесь я должен подчеркнуть, что всё сказанное в предыдущих абзацах, относится к истории не только операционных систем, описываемой в этой части, но, в не меньшей степени, дистрибутивов и интерфейсов, составляющих предмет частей второй и третьей, соответственно. Вообще, вся история FOSS и состоит из чередования таких насыщенных событиями моментов и периодов межвременья, осложняясь собственными сюжетными разветвлениями и наложением внешних факторов. Чем и напоминает исландскую сагу.

Для чего нужно столь подробное введение? Обосную словами Мэтта Диллона, в прошлом одного из ключевых разработчиков FreeBSD, а ныне создателя её форка – операционной системы DragonFlyBSD:

Самой большой ошибкой, которую может допустить программист, является игнорирование истории, и это именно та ошибка, которую сделали разработчики многих других современных операционных систем… Я плохо переношу тех, кого история не учит.

Кроме того, история ОСей мира FOSS просто чрезвычайно увлекательна, а местами и полна драматизма, как хороший приключенческий роман. Надеюсь, на страницах этой книги мне удастся хоть в какой-то мере передать те чувства, которые испытывал сам, когда с нею знакомился.

Истоки и составные части

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

Во-первых, это академическая и университетская Computer Science эпохи «больших машин», в частности, работы по искусственному интеллекту.

Во-вторых, сеть ARPANET и все сопряжённые с ней явления, из которых вырос в итоге современный массовый Интернет. Ибо только нынешние «одноглазнеги» полагают, что Интернет был придуман для того, чтобы они могли сидеть «ффконтакте».

В-третьих, это корпоративный UNIX и организации по упорядочиванию его стилей , иначе говоря, стандартизации.

В-четвёртых, это Берклиада – история, полная драматизма, в которой, как и в поэме Гомера, впервые переплелись перечисленные выше пряди. Но о ней будет подробно говориться в следующей главе.

В-пятых, это общественные движения – Open Source Software и Free Software. Здесь я немного отступаю от хронологии – второе формально предшествовало первому. До de facto первое явление существует как минимум со времён Ньютона и Лейбница.

В-шестых, это эволюция аппаратных платформ – от первых интерактивных рабочих станций до «народных» x86-совместимых компьютеров.

Как видите, получается куда больше, чем сакральная троица, которую так любят бог и большевики. И это при том, что я не уверен, вспомнил ли я все истоки и все составные части – что не страшно, в этом цикле удастся осветить далеко не все даже из перечисленного.

Причём о некоторых истоках и составных частях я умолчал сознательно – например, об эпохе Eniac'а и БЭСМ'ов, ибо нет у меня о них достаточно информации. Надеюсь, что...

... Кто-нибудь услышит, Снимет и напишет, Кто-нибудь помянет...

... участников тех давних проектов. Они заслуживают этого не меньше, чем создатели первого реактора... Да и чем многие другие, которых тоже ещё не помянули.

А теперь вернёмся к нашим истокам и их составным частям. Поскольку, как уже было сказано, намеченные сюжетные линии развивались параллельно во времени, рассказывать эти истории постараюсь тоже параллельно – и не только в этой главе.

Computer Science и ARPANET

История академической Computer Science уходит в начало 60-х, время появления первых компьютеров, способных к интерактивной работе. Хотя они далеко ещё не были персоналками – но ведь ранее машины, как помнят читатели «Понедельника», почему-то начинавшегося тогда «в субботу», работали исключительно в режиме пакетных заданий. И влиять на это не могли не только маги вроде Кристобаля Хозевича и Фёдора Симеоновича, но даже всесильные научные администраторы, товарищи Камноедов и Лавр Федотыч.

Место же зарождения этой науки условно определим как крупнейшие американские университеты – Массачусетский Технологический Институт (MIT), Йель, Университет Карнеги-Меллона, Стэнфорд, Калифорнийский университет Беркли. Историческим центром этого движения долгое время была лаборатория искусственного интеллекта MIT (MIT AI – Artificial Intelligence). В недрах MIT AI родился, судя по многим свидетельствам, и термин «хакер» – так называли друг друга те, кто способен был «врубиться» в компьютерные науки. Но эта тема столь жёвана и пережёвана, что на ней мы останавливаться не будем

Работы же по созданию отказоустойчивой правительственной связи США, как нетрудно догадаться, начались по инициативе Министерства обороны этой страны. Ибо имели целью создание надёжной системы передачи информации на случай советского ядерного удара. Финансирование осуществлялась через ARPA – Агентство передовых исследовательских проектов (Advanced Research Projects Agency), которое позднее, без лишнего лицемерия, было переименовано в DARPA, с добавлением слова Defense (в данном контексте – Оборонных проектов). Запомним последнюю аббревиатуру – позднее эта организация сыграет немалую роль в нашей предыстории.

Непосредственная реализация системы связи была возложена на ряд американских университетов – Калифорнийский, Университет штата Юта, Стэнфорд. Потому что, как оказалось, кроме университетских хакеров из сферы Computer Science, разрабатывать и поддерживать её было попросту некому. А эти «ребята, за ту же зарплату», не только выковали электронный щит своей Родины в виде сети ARPANET (по имени организации-кормильца), но, будучи истинными учёными, воспользовались случаем в интересах науки. А именно – наладили бесперебойные каналы обмена информацией между своими Alma mater, создав таким образом сообщество ARPANET – прообраз грядущего Интернет-сообщества.

Первый сеанс связи в рамках проекта ARPANET состоялся 29 октября 1969 года в 21 час по местному времени. И оказался не вполне удачным: удалось передать только три символа, после чего сеть рухнула. Однако уже через два часа работоспособность её была восстановлена (учитесь, нынешние провайдеры!), и передача завершилась успешно. Интересно, что контроль передачи осуществлялся почти тем же методом, который изображён в фильме «Волга-Волга»: не с помощью рупора, конечно (от Лос-Анжелеса до Пало Альто докричаться проблематично), но по телефону.

Сеть ARPANET очень быстро охватила не только университеты, участвовавшие в её разработке, но и многие другие учебно-научные заведения Америки, а потом и сопредельных стран, став таким образом международной коммуникационной магистралью для обмена научной информацией. Правда, скоро её в этой роли сменила сеть Национального научного фонда США (NSF – National Science Foundation), создавшего свою сеть, NSFNet, обеспечивавшую большую пропускную способность. Именно на её базе и был создан современный Интернет.

Зарождение UNIX

Зарождение UNIX, как и сообщества Computer Science, также связано с появлением компьютеров, пригодных к использованию в интерактивном режиме, что создало предпосылки к разработке тех самых систем разделения времени, допускающих как бы одновременное исполнение нескольких задач (time sharing), которые пришли на смену машинам, работавшим исключительно в пакетном режиме. Одной из первых таких систем была CTSS (Compatible Time Sharing System).

Без академической составляющей, представленной в данном случае MIT, не обошлось и здесь. В развитие CTSS в 1965 году фирмами AT&T и General Electric вместе с MIT был начат проект по созданию истинно многозадачной и многопользовательской системы, которая получила имя Multics. По замыслу она была столь прогрессивной, что в те времена оказалась нереализуемой, и в 1969 году проект был закрыт, оставив среди его участников тоску по интерактивной работе и идею системы разделения времени, вскоре воплотившуюся в UNIX.

Правда, сама ОС UNIX вышла из корпоративных недр компании AT&T, сотрудниками которой являлись его создатели – бывшие участники проекта Multics. Однако это ни в коей мере не была корпоративная разработка: Кен Томпсон и Деннис Ричи разрабатывали её для собственных потребностей – это был первый в истории IT пример создания «системы для себя». В противоположность, например, системе VAX/VMS от фирмы DEC, которая претендовала на звание «системы для всех».

Правда, понятие «все» в случае c VAX/VMS охватывало весьма узкий круг, даже не столько лиц, сколько организаций. Но остаётся фактом, что система VAX/VMS разрабатывалась не для личного использования. Это наложило отпечаток не только на неё, но и предопределило судьбу её прямого потомка – Windows NT/etc.

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

Впрочем, усилия разработчиков были оценены должным образом, и достаточно быстро: в 1983 году Томпсону и Ричи была присуждена премия Тьюринга – самая престижная награда в информационной сфере. Которую по значимости можно сравнить с премией, учреждённой некогда Альфредом Нобелем «за выдающиеся научные исследования, революционные изобретения или крупный вклад в культуру или развитие общества». Что поделать – Нобель не мог и предполагать, что информационные технологии окажут на развитие общества не меньшее влияние, чем изобретённый им динамит.

А в 1999 году Томпсон и Ричи удостоились одной из высших наград государства, гражданами которого они являются[1]1
  Деннис Ритчи – являлся, так скончался 8 октября 2011 года


[Закрыть]
: – Национальной медали в области технологий (National Medal of Technology, ныне – National Medal of Technology and Innovation). Которую им лично вручил человек, прославившийся обсуждением вопроса, является ли оральный секс основанием для обвинения в лжесвидетельстве. Ну и прочими мелочами, типа приказа о бомбардировке Югославии. От чего, впрочем, награда эта не становится менее почётной...

На дальнейшую судьбу UNIX огромное влияние оказали юридические коллизии тогдашнего текущего момента. Незадолго до создания этой системы корпорация AT&T подверглась антимонопольному преследованию, в результате чего претерпела поражение в правах – на деятельность её был наложен ряд ограничений. В частности, она не имела права торговать программными продуктами, в число коих попадала и новорождённая UNIX.

Разумеется, материнская корпорация постаралась пристроить к делу создание своих сотрудников – в частности, UNIX с его инструментарием использовался в AT&T для подготовки технической и патентной документации. Что, кстати, представляет собой типичную пользовательскую задачу. И скажите мне теперь, что UNIX не пригоден для применения конечными пользователями.

Однако, как уже было сказано, в силу юридических ограничений AT&T не могла сделать из UNIX коммерческий продукт. И потому исходники этой системы, начиная с 1974 года, стали распространяться в университетах – в образовательных, как это тогда задумчиво называлось, целях. На условиях по тем временам достаточно либеральных, в том числе, и просто явочным порядком, лично Брайаном – люди с психологией сталинских наркомов, которые могли сказать: «под мою ответственность», встречались не только в Советском Союзе…

Передача UNIX в университетские структуры не была свободным распространением в том смысле, который вкладывается ныне в понятие FOSS. Хотя система, точнее, тогда ещё не более, чем её прототип, и передавалась в исходных текстах с правом их изучения, модификации, доработки и прочего потрошения.

Однако, во-первых, все эти действия требовали обладания лицензией на исходный код UNIX, которая передавалась AT&T вместе с ней самой и её исходниками, но – за деньги, хотя и не очень большие по масштабам американских организаций середины 70-х годов прошлого века. В личное же пользование лицензии на UNIX тогда ещё не приобретали.

А во-вторых, и это главное, условия лицензии не допускали дальнейшего свободного распространения ни системы целиком, ни отдельных ее компонентов, содержащих исходный код UNIX. Что, собственно, и создало сюжет дальнейшей детективно-технологической интриги.

Однако до развёртывания сюжета грядущего технологического детектива было ещё далеко. А пока университеты с радостью приобщались к новой операционной системе, в которой были реализованы все передовые идеи того времени. И к тому же в принципе способной функционировать практически на всем спектре тогдашнего оборудования. Напомню, что речь идёт о середине 70-х годов прошлого века: Стив Джобс еще не помышлял о продаже калькулятора и использовал родительский гараж по прямому назначению, а Билл Гейтс не освободил мир своим MS DOS’ом от засилья CP/M.

Выйдя за стены Bell Labs, UNIX зажил самостоятельной жизнью, крепко окопавшись в той же университетско-академической среде Computer Science. Одним из её центров в данном случае оказался Калифорнийский университет Беркли – учреждение, известное всем, интересовавшимся историей как точных наук, так и их влиянием на нашу жизнь.

Получив, благодаря профессору Бобу Фабри (Bob Fabry), в 1974 году ОС UNIX вместе с её исходниками и лицензией на их использование, университет Беркли поддержал и развил традицию «систем для себя», свойственную первозданному UNIX. Но об этом – в следующей главе. А пока – о «железных» предпосылках.


    Ваша оценка произведения:

Популярные книги за неделю