BSD: межвременье

В истории BSD и CSRG мы остановились на моменте выхода 4.3BSD и двух её последовательных инкарнаций — 4.3BSD-Tahoe и 4.3BSD-Reno. Как мы теперь знаем, базовой платформой для всех них был VAX. Однако 4.3BSD-Tahoe была примечательна тем, что в ней были обособлены машинно-зависимые и машинно-независимые части кода, что создавало предпосылки для грядущего портирования на иные архитектуры, планировавшиеся в версии 4.4. А 4.3BSD-Reno и была прототипом этой грядущей ветки, предназначенным для обкатки намечавшихся новшеств.

Параллельно с основными выпусками 4.3BSD было подготовлено еще два как бы дополнительных — 4.3BSD Net1 (март 1989 года) и 4.3BSD Net2 (июнь 1991 года). Основываясь на 4.3BSD-Tahoe и 4.3BSD-Reno соответственно, они содержали исключительно компоненты, разработанные в Беркли и полностью освобождённые от какого-либо кода первозданного UNIX. И потому могли распространяться свободно как в бинарном виде, так и в виде исходных кодов.

Название выпусков 4.3BSD Net# (или Networking Release#) связано с тем, что они замышлялись, в первую очередь, как подборки инструментария для работы с сетями — главным образом, по протоколу TCP/IP. Таково было пожелание пользователей, нуждавшихся в этих средствах, но по тем или иным причинам не испытывавших потребности в лицензировании собственно UNIX-кода. Однако, как мы увидим далее, значение этих выпусков скоро переросло поставленные первоначально скромные цели.

И 4.3BSD Net1 стал первой системой из Беркли, которая распространялась под лицензией BSD (ещё в первом её варианте, включавшем требование упоминать Регентский совет Калифорнийского университета при дальнейшем распространении).

А оно не замедлило воспоследовать: номинальная цена за ленту 4.3BSD Net1 была установлена в 1000 долларов. Однако, поскольку лицензия это не запрещала, далее копии ленты могли распространяться совершенно свободно, копироваться, устанавливаться на любое количество машин, передаваться и даже выкладываться на анонимные ftp-сервера. Что, разумеется, и происходило — однако, по свидетельству очевидцев этой истории, немало организаций не сочли для себя накладным заплатить указанную сумму. Причём не столько ради получения самого кода — его, как уже сказано, можно было получить и бесплатно, сколько для финансовой поддержки проекта.

Подобная практика распространения продолжалась и позднее — после выхода 4.3BSD Net2. И опять с тем же результатом — несмотря на возможность откровенной и вполне законной халявы, нашлось несколько сотен контор и даже частных лиц, которые выложили 1000 баксов за обладание дистрибутивной лентой. Среди таковых оказался и Грег Лией — в последующем один из ключевых разработчиков FreeBSD.

Факт столь массового спроса на 4.3BSD NetX тем более примечателен, что ни первый, ни второй её выпуск не содержал самодостаточной, загружаемой ОС, а включал только системное обрамление и комплекс утилит, в первую очередь, для работы с TCP/IP. И пользователи, кем бы они ни были, организациями или частными лицами, покупали её на свой страх и риск, так как превращением её в законченную операционку они должны были озаботиться сами.

В ходе подготовки выпусков 4.3BSD Net1 и Net2 обнаружилось, что проприетарного (то есть патентованного) кода первозданного UNIX, права на который к тому времени перешли к USL (UNIX Systems Laboratory — дочерняя компания AT&T, созданная специально для продвижения этой системы) в составе берклианских UNIX’ов осталось не так уж и много. И родилась идея создания полностью открытой, свободно распространяемой операционной системы BSD. Правда, даже в наиболее полном выпуске 4.3BSD Net2 недоставало нескольких ключевых фрагментов, которые превратили бы его в полноценную операционную систему, полностью свободную от наследия UNIX. Их и следовало воспроизвести в первую очередь.

Как можно судить по косвенным данным, примерно в это же время прекращается или резко сокращается финансирование проекта BSD со стороны DARPA. Есть подозрение, что причиной тому послужил распад мировой системы социализма — все в жизни имеет свою оборотную сторону, даже крах коммунистической идеологии. И хотя CSRG просуществовала еще несколько лет (как структурное подразделение, она была расформирована в 1995 году), ряд её сотрудников начал подыскивать себе другие занятия.

В числе их оказались Билл Джолитц (Bill Jolitz) и Линна Джолитц (Lynne Jolitz). Они поставили своей целью, во-первых, воспроизвести те самые недостающие звенья между 4.3BSD Net2 и полноценной ОС (в источниках речь идёт о шести файлах), а во-вторых, портировать новообразованную систему на ту самую демократическую платформу, о которой шла речь — на i386.

Обе задачи были успешно решены в течении полугода после выпуска 4.3BSD Net2. И в результате в январе 1992 года свет увидела работоспособная система под названием 386BSD, первая из всех берклианских систем, полностью свободная от проприетарного кода, и первая же, адаптированная для машин с процессором i386, что и было вынесено в её титулатуру (хотя она была известна также под именем JOLIX).

Распространялась система 386BSD исключительно по сети, как в откомпилированном виде, так и в исходниках, и сразу, несмотря на содержащиеся в ней ошибки, приобрела популярность среди широких народных масс. Следствием этого стало появление большого количества исправлений, дополнений и улучшений исходной системы, которые составили корректирующий комплект, получивший неофициальное название patchkit (набор заплаток), делающий 386BSD пригодной к практическому использованию.

Некоторое время “заплаточный” проект развивался усилиями энтузиастов при координации Билла Джолитца. Однако довольно скоро выяснилось, что он не может уделять ему столько времени, сколько требовала обработка многочисленных поступающих патчей. И на некоторое время “заплаточный проект” оказался заброшенным.

Правда, практически сразу, в начале 1993 года, на базе 386BSD была образована группа NetBSD, однако её разработки пошли по иной линии, нежели та, которая была намечена в системе-предшественнице, а именно: в направлении поддержки максимального числа платформ из существовавших в то время. В дальнейшем эта деятельность привела к созданию операционной системы NetBSD, знаменитой широтой охвата поддерживаемых процессоров: список их занимает не одну экранную страницу, и i386, как и x86_64, занимает в нём отнюдь не привилегированное место. Да и как система, хоть в малейшей мере ориентированная на десктопное использование, она своими разработчиками не позиционировалась никогда.

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


Теги: ,