Тем не менее, хотя FreeBSD и задумывалась как система для пользователей, пусть и весьма специфических – но с сегодняшней колокольни превращения компьютера в бытовой прибор все пользователи того времени выглядят специфическими, – стать таковой в те дни ей было не суждено. Однако она снискала популярность среди Интернет-провайдеров, что и предопределило её репутацию как серверной системы на многие годы вперед. Стереотип этот начинает ломаться лишь в последние годы, что мы и увидим при рассмотрении дальнейшей истории этой системы.
И хотя главная интрига нашего исторического сюжета позади, в будущем FreeBSD будет еще один драматический поворот, о котором мы расскажем в своё время. А сейчас зададимся вопросом – почему же эта ОС не стала системой для пользователя? Ведь, казалось бы, наконец претендент на звание народной ОС для народной платформы определился. Однако эта роль – стать народным десктопных UNIX’ом – выпала на долю системы, которая в это самое время зародилась в других краях и на другой почве. Со временем ответ на этот вопрос придёт. Но прежде мы вернёмся немного назад, к моменту вскоре после расщепления первозданного UNIX'а на ветки System V и BSD.
Глава третья. Возвращаясь к UNIX'ам
Хотя изложение истории проприетарных UNIX'ов не является предметом данного сочинения, они развивались параллельно с «UNIX'ами» свободными, и обе ветви оказывали друг на друга влияние. Так что время от времени нам придётся обращаться к этой сюжетной линии. Один из таких моментов наступил.
Серенада солнечной долины
Вернёмся к тому моменту, когда Билл Джой взялся за разработку ОС для только что появившихся компьютеров Sun. В основу своей системы он положил 4.1BSD, разработчиком которой перед тем являлся. А во главу угла её поставил ориентацию на поддержку компьютерных сетей и интеграцию с ARPANET, а в последующем – и Интернет.
Именно Биллу принадлежит знаменитый лозунг: Сеть – это Компьютер (The Network Is The Computer). Что вполне может быть инвертировано в: Компьютер – это сеть. Правда, выдвинут он был позднее, в середине 90-х годов, уже в эпоху Интернета.
Поддержка сетей в SunOS базировалась на ставших тогда почти стандартными протоколах Ethernet и TCP/IP. Именно из недр Sun вышли понятие виртуальной файловой системы – VFS, реализация сетевой файловой системы – NFS, множество средств удалённого доступа (RPC, Remote Procedure Calls) и так далее.
Далее, в SunOS большое внимание уделялось поддержке масштабируемости систем. Подразумевалось, что одна и та же ОС должна работать как на многопроцессорных серверах, так и на любых подключённых к ним рабочих станциях. С этим тесно связана и поддержка многопроцессорности, столь востребованная в наши дни. Конечно, и масштабируемость, и поддержка многопроцессрности не были уникальными для SunOS – этим же путём шли разработчики всех коммерческих UNIX. Однако Sun здесь была в числе первых – это раз. И во-вторых, именно её разработки оказали наибольшее влияние на развитие поддержки многопроцессорности в FOSS-операционках.
И наконец, SunOS изначально была тесно интегрирована со средствами поддержки графического интерфейса пользователя. Причём – средствами собственной разработки. Первым из них была SunView (Sun Visual Integrated Environment for Workstations, изначально SunTools) – оконная система, возникшая едва ли не одновременно с самой ОС в первой половине 80-х годов. От всех последующих оконных систем, ориентированных на UNIX, она отличалась тем, что большая её часть поддерживалась ядром. Кроме того, она включала в себя набор стандартных пользовательских приложений, таких, как текстовый редактор, почтовый клиент, инструменты для настройки. И, наконец, она являлась частью стандартной поставки операционной системы. По-видимому, именно в SunOS впервые была реализована интеграция операционной системы, графического интерфейса и пользовательских приложений, получившая дальнейшее развитие не только в мире UNIX.
На смену ей в середине 80-х годов пришла NeWS (Network extensible Window System) – более сложная система, основанная на PostScript. Однако получить широкого распространения она не успела.
Наконец, в конце 80-х годов для SunOS была разработана оконная среда OpenWindows. Сначала она поставлялась как отдельное дополнение, а потом была включена в состав операционной системы.
На протяжении 80-х – начала 90-х годов были выпущены версии SunOS с 1-й по 4-ю, работавшие на машинах Sun-1, Sun-2, Sun-3. Однако в конце 80-х годов начинается смена аппаратной платформы: процессоры Motorola 68XXX в серверах и рабочих станциях заменяются на»камни» собственной разработки и производства, RISC-процессоры SPARC. Для которых разрабатывается и новая операционная система, названная Solaris 2. В отличие от предшественницы, она основывалась не на BSD-линии, а на «классической» System V (SVR4). Параллельно происходит отказ от графических средств собственной разработки, сменяясь ставшими стандартными для UNIX мира оконной системой X и рабочей средой CDE.
Некоторое время обе архитектуры со своими операционками сосуществовали, причём SunOS научилась поддерживать Sparc'и. Последний её релиз (SunOS 4.1.4) вышел в ноябре 1994 года. Тем не менее, название SunOS по сей день сохраняется за ядром OS Solaris (и OpenSolaris).
Однако тут мы уже чрезмерно углубились в 90-е годы. А ведь SunOS была не единственным представителем проприетарных UNIX'ов. О которых пойдёт речь в следующей главе.
Из предыдущих страниц могло создастся впечатление, что всё развитие UNIX вращалось вокруг университета Беркли и компании Sun. Разумеется, это не так. Просто там проходила генеральная линия развития тех систем, которые позднее составят мир FOSS. Основные же события, связанные с развитием проприетарных ветвей UNIX, происходили в более иных местах.
Я не буду говорить о них подробно – во-первых, потому, что они лежат за гранью нашей главной темы. А во-вторых, просто плохо знаю их историю – надеюсь, она найдёт своих летописцев. Тем не менее, несколько слов о проприетарных UNIX'ах сказать необходимо.
Начать с того, что не забрасывала свое детище сама AT&T во всех ее проявлениях. Правда, разработка системы плавно перемещалась от Bell Labs к иным подразделениям, типа группы поддержки UNIX и т.д., однако в мои цели не входит описание истории этой корпорации, и потому названия их я опускаю.
Из недр AT&T (в обобщенном понимании этого слова) последовательно выходят System III, System V, System V Release 2 (SVR2) и, наконец, System V Release 3 (SVR3); этой системе, разработанной в 1987 г., суждено было стать последним представителем чистой линии первозданного UNIX. Ибо уже System V Release 4 (SVR4), появившаяся в 1989 г., включила в себя множество новшеств из разработки 4BSD – интеграцию с TCP/IP, поддержку FFS, берклианскую реализацию механизма виртуальной памяти, и многое другое.
В частности, легший в последствии в основу стандарта POSIX шелл Корна, несмотря на совместимость с первозданным шеллом (Bourne Shell), заимствовал из C-Shell такие особенности, как управление заданиями, историю команд, поддержку псевдонимов и т.д. (впрочем, развитие шеллов – совершенно отдельная история, о которой мы поговорим, когда придёт время – и не в этой рубрике).
Благо, как уже было сказано, берклианские разработки распространялись в соответствие с принципами открытой науки – то есть практически свободно. И если AT&T не всегда заимствовала их на уровне реализаций (то есть непосредственно кода), то идейное их влияние на первозданный UNIX было несомненным.
UNIX от AT&T, был лицензирован многими компаниями – производителями оборудования, оценившими, вслед за Sun, портируемость этой ОС: IBM, Hewlett-Packard, DEC, SGI и еще несколько забытых. Базируясь на SVR3, а позднее – на SVR4, они адаптировали систему под собственные архитектуры, создав такие варианты UNIX, как AIX от IBM, HP-UX, Digital UNIX (позднее Tru64), IRIX, соответственно. Все это были коммерческие операционки, однако, будучи жестко привязанными к аппаратуре фирм-производителей, в свободной продаже (подобно нынешним Windows) они не присутствовали.
В третьих, чисто софтверные фирмы подняли мутный вал UNIX'ов уже сугубо коммерческих, то есть предназначенных для продажи помимо оборудования.
Первыми на этом поприще отметились компании Interactive Systems и Santa Cruz Operations (очень косвенный предок скандально прославившейся ныне SCO). Не имея собственных аппаратных платформ, они адаптировали UNIX под платформы общераспространенные, коими были сначала PDP, а затем и IBM PC. Кажется, именно SCO UNIX стала первой представительницей семейства UNIX, портированной на машины с процессором Intel (то есть на архитектуру i386).
Как ни странно, в числе первых здесь оказалась и Microsoft. Ею была создана система XENIX для тех же i386-х машин. По словам видевших ее, это было нечто вроде однопользовательской реализации UNIX – как всегда, Microsoft и тут, подобно товарищу Ленину, пошла своим путем...
В результате ни одной из этих разработок не досталось народной любви – вследствие высокой стоимости и малого количества приложений, а для XENIX еще и урезанной функциональности. Хотя SCO UNIX получила довольно широкое распространение в банковской сфере. В частности, её потомки трудятся в Сбербанке России чуть ли не по сей день.