Уильям Джолиц: создатель первой версии BSD

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
image

Сегодня, 22 февраля, день рождения Уильяма (Билла) Фредерика Джолица – создателя первой версии BSD – 386BSD (Jolix). Эта операционная система стала отправной точкой для NetBSD и FreeBSD. Уильям с детства был талантливым инженером и программистом, поэтому неудивительно, что он был частью развития BSD систем.

В этой статье расскажу о его первых проектах, стажировке в НАСА, о событии, приблизившем его к смерти, и истории появления той самой ОС 386BSD. Отмечу, что материал основан на некрологе о жизни Уильяма Джолица, написанном его женой Линн Грир Джолиц и размещенном на сайте www.386bsd.org.

16 мая 2022 года FreeBSD выпустили версию 13.1, посвященную памяти Уильяма Джолица. Сейчас шаблон этой ОС доступен в панели управления Serverspace. Подробнее в новости.

Первые проекты


Уильям Джолиц, известный также как Билл, родился 22 февраля 1957 года. Его родители были инженеры, работающие в аэрокосмической отрасли, поэтому неудивительно, что их ребенок связал свою жизнь с технологиями. Впоследствии Уильям работал и над проектами из аэрокосмической сферы, но об этом далее.

Свою первую программу Уильям написал еще в начальной школе, во время посещения музея Франклина в Филадельфии, прочитав руководство к калькулятору и переведя его клавиатуру в программный режим. Мальчик дождался, когда доценты отойдут от калькулятора, и написал программу, которая печатала удвоенное число. Этим он привлек внимание местных чиновников, и они пригласили его стать учеником Института Франклина. Это избавило его от школьной рутины и неинтересных ему занятий.

image


Жизнь Уильяма была тесно связана с космической темой. Он научился строить телескопы, а также шлифовать и полировать зеркала. Разбирал переданные ему телескопы, регулировал их, коллимировал и перестраивал. Его увлечение было настолько сильно, что он мог определить местонахождение любого астрономического объекта Мессье (галактики, шаровые скопления, эмиссионные и планетарные туманности, рассеянные скопления) на небе, не прибегая к звездным картам или телескопам.

Стажировка в НАСА


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

Первой задачей Уильяма было рассчитать таблицу параметров углеродных звезд. Для ее решения ему предоставили простой четырех функциональный калькулятор, но Уильям отказался от него и запросил доступ к компьютеру. Ему предоставили единственный доступный компьютер – HP 9830, которым никто не знал, как пользоваться. С помощью него У.Джолиц написал программу на Basic, и к полудню таблица была готова.

HP 9830
HP 9830

Доказав свое умение обращаться с компьютерами, Уильям был привлечен и к другим проектам, во время которых он смог самостоятельно изучить программирование ядра Unix. Проектом, которым он гордился больше всего, была разработка адаптера голосового вывода для программистов с нарушениями зрения.

image
DEC LSI-11

Одна из первых его статей была написана именно про этот проект. Она была размещена в журнале West Coast Computer Faire 1977 года и называлась «The Design of a voice output adapter for computer». В статье он рассматривал конструкцию адаптер, и рассказал, как это устройство работает. Оно генерирует речь из обычного печатного текста, а фонетический перевод осуществляется с помощью набора правил, а не словаря. Для его разработки были использованы микрокомпьютер DEC LSI-11, синтезатор VOTRAX VX-6, генерирующего речь из текста, интерфейс перехвата и Принтер Брайля от Triformations, Inc, позволяющий использовать ограниченный объем печатной продукции.

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

Проект, стоивший жизни


Следующим проектом, над которым работал У.Джолиц, была автоматизированная навигационно-авиационная (Nav/Av) система, которая могла корректировать траекторию самолета, потерявшего управление, одним нажатием кнопки. Технологию было необходимо протестировать, поэтому Уильяма отправили на Федеральный аэродром Моффетт.

image


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

Nav/Av в Эймсе активно сотрудничала с ВВС. После того, как Уильям изобрел новый способ оперативного отслеживания незаконного распространения ядерного оружия, полковник ВВС был заинтригован и собрал неофициальную миссию. Во время «Летних каникул», как их называли в семье Джолица, Уильям сидел в кафе в Йемене с другими из его группы. Ребенок подкатил под двери российскую гранату, которая при детонации раскололась по шву. Никто не погиб, но Уильяму в левую руку, грудь, левую ногу и шею попала шрапнель. Вероятно, металл, который использовался для изготовления гранаты, был заражен радиоактивностью, и военные врачи сказали ему, что в 60 лет у него разовьется неизлечимый рак. Вскоре после этого операция была расформирована.

Эта плохо спланированная миссия ВВС оставила восемнадцатилетнего Уильяма с пожизненным шумом в ушах, посттравматическим стрессовым расстройством и неутешительным приговором. Несмотря на все это привило ему философию жизни – двигаться вперед и никогда не оглядываться назад.

Новые проекты


Вернувшись в NASA и Nav/Av, Уильям перешел к консультированию Геологической службы США (USGS) в рамках проекта Menlo 70 Unix. Он решал вопросы с портами и ядром, пока посещал курсы в Калифорнийском университете в Беркли для изучения основ по информатике. В свободное время он работал над версиями PDP-11/40 2.8BSD и 2.9BSD.

image


После Беркли Уильям заинтересовался в National Semiconductor (американский производитель полупроводниковой продукции, который специализировался на аналоговых устройствах и компонентах) проектом Mesa, в рамках которого он возглавил свою первую графическую рабочую станцию ​​Unix. Также Уильям управлял переносом Unix на микропроцессор NS16032. Он работал по ночам с разработчиками программного обеспечения, а днем ​​— с инженерами по аппаратному обеспечению. Вскоре Уильям разочаровался в корпоративной политике компании и возражениях со стороны маркетинга по поводу продажи рабочей станции. Уильям покинул National и приступил к созданию своего первого стартапа Symmetric Computer Systems. В течение следующих двух лет Symmetric разработала и построила с нуля портативный компьютер с разделением времени на базе микропроцессора NS32016 с портом Berkeley Unix.

386BSD


Уильям хотел сделать порт Unix для Motorola 68000 или Fairchild Clipper. Один из партнеров Technology Funding, ранее финансировавший Symmetric, предложил взглянуть на ранние самые мощные на тот момент 32-разрядные процессоры 386 от Intel и AMD.

Так, в 1990 году Уильям и его жена Линн написали документ, озаглавленный «386BSD: скромное предложение» (386BSD: A Modest Proposal), в котором были изложены основные характеристики переноса Unix из Беркли на платформу Intel 386. В журнале Dr. Dobbs Journal была опубликована серия статей, документирующих этот процесс. Проект превратился в четыре года статей, несколько выпусков 386BSD, распространенных по всему миру, и несколько книг.

На сайте www.386bsd.org можно найти большинство статей и исходных кодов, написанных в те годы.


12 марта 1992 года инженеры представили 386BSD Release 0.0, операционной системы с открытым исходным кодом. Однако она была еще сырой и неработоспособной. Версия 0.1 стала более полным релизом и была представлена в июле того же года.

image


Даже десятилетия спустя Уильям помнил весь исходный код версии 6 Unix Кена Томпсона и Денниса Ритчи, которые он изучал в дни работы в НАСА и Геологической службы США. Поэтому он интуитивно понимал, как сделать 386BSD доступной и прозрачной для читателей. Друг Джолицев Дик Карпински из UCSF размещал зеркала для 386BSD 0.0 по всему Интернету, что повлекло огромное количество загрузок и интерес к системе. Уильям и Линн разрабатывали новые подходы, такие как ролевая безопасность и полиморфные протоколы, или разработка новых стратегий, таких как отказ от старого процесса установки, предназначенного для опытных системных операторов, с упрощенной автоматической установкой, системы нужно было только знать, сколько места на диске надо использовать.

386BSD 0.1 поддерживала широкий набор аппаратных средств ПК и простые процедуры установки. Система содержит множество утилит, которые можно использовать при разработке, включая компилятор C, компилятор C++, загрузчик, семейство сетевых протоколов (TCP/IP) и т.д… 386BSD также содержит полный набор сетевых средств, включая NFS, среду разработки программ для приложений размером в гигабайт, инструменты для подготовки документов и редактирования текста, а также механизмы баз данных. И, наконец, он может перестроить себя из собственного исходного дерева.

Появление других BSD систем


386BSD была первой операционной системой Berkeley UNIX с открытым исходным кодом. Она стала прародителем Linux, iOS и Android. Начиная с цикла статей «Скромное предложение» в 1989 году, 386BSD отделилась от проприетарных систем, имея общедоступный код и документацию. Именно она подготовила почву для формирования FreeBSD, NetBSD и OpenBSD. История появления FreeBSD началась с группы пользователей, которая начала выпускать неофициальный патчкит, собирая исправления ошибок и улучшения.

В 1993 году две группы разработчиков были недовольны направлением, в котором Билл и Линн Джолиц развивали 386BSD. Уильям и Линн Джолиц не хотели включать дополнения, разработанные этими группами в рамках сформированного комьюнити, в официальные обновления 386BSD. Они хотели самостоятельно контролировать разработку и выпуск системы. Свободные разработчики взяли доступный исходный код и, как это стало традицией в сообществе открытого исходного кода на долгие годы вперед, начали разрабатывать свои проекты.

  • Первой из этих групп была FreeBSD, которая сосредоточилась на максимальном упрощении использования системы для нетехнических пользователей и направила свои усилия в первую очередь на аппаратное обеспечение Intel x86. Релиз состоялся 1 ноября 1993 года.
  • Вторая группа, NetBSD, начала работу чуть позже; они стремились внедрить BSD на все возможные аппаратные платформы, сделать ее кроссплатформенной. Если аппарат хоть немного напоминает компьютер, скорее всего, вы сможете запустить на нем NetBSD.
  • OpenBSD, третья группа, посвятившая себя тому, чтобы быть самой безопасной доступной операционной системой, отделилась от группы NetBSD несколько позже.


Появление новых BSD систем не сбило 386BSD с курса, и в 1994 году Джолицы выпустили релиз 1.0 386BSD. Он содержал полностью обновленное ядро и включал рекомендации разработчиков более ранних BSD-систем, которые так и не были в них реализованы. Однако со временем проекты FreeBSD и NetBSD стали набирать популярность, а авторы не видели возможности развития с проектом 386BSD. Это был проект Беркли, который дал другим возможность работать с Unix и тестировать его. И он блестяще справился с этой задачей. Авторы перестали обновлять систему. Она до сих пор доступна для свободного скачивания и некоммерческого использования.

Что было дальше?


В дальнейшем Уильям был нанят в Tandem Ричардом Баклом для наблюдения за их продуктом ServerNet. Затем работал на Роэла Пипера, генерального директора Tandem в группе Strategy and New Ventures, занимаясь оценкой инвестиционных возможностей. В этом проекте его волновала проблема интеграции ServerNet в Интернет. Поскольку ServerNet был проприетарным протоколом, предназначенным для совершенно другой среды, как только он был подключен к существующему Интернету клиента, он терял свои преимущества с низкой задержкой. Линн предложила своему мужу использовать TCP. В результате появились SiliconTCP и InterProphet Corporation. Мы проверили наш проект с Винтом Серфом, которого ласково называют Отцом Интернета, и Уильям получил 1 миллион долларов на разработку этого проекта. Уильям был генеральным директором InterProphet и занимался сбором средств, пока Линн руководила проектированием и производством.

Венчурный капитал Sand Hill Road по-прежнему был озабочен ATM как будущим и рассматривал SiliconTCP как препятствие для своих инвестиций. Из-за споров через два года компанию пришлось закрыть. Джолицы переключили внимание на семью и исследование звезд.

в последние годы Уильям занимался своими детьми Отэм и Ребеккой и помогал им в ​​создании их первых компьютеров. Он передал Отэм большую часть своих знаний об операционных системах и базах данных. Они совместно работали над созданием приложения для передачи файлов для iPhone под названием BEST (Basic Enterprise Storage Tool).

Их семья разработала и запустила свои собственные веб-сайты и научили детей делать то же самое. Веб-сайт 386BSD.org был обновлен при их непосредственной поддержке и участии. Отэм вместе с Уильямом даже разработала приложение для iPhone для противодействия шуму в ушах.

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

Как и предсказывали врачи, в возрасте шестидесяти лет у Уильяма развилась неизлечимая саркома высокой степени. Он храбро сражался с помощью и под руководством своей медицинской команды в Стэнфорде и своего личного врача доктора Кита из Dignity Health.
Уильям Джолиц скончался от онкологического заболевания 2 марта 2022 года. Их сын, Билл, продолжает дело родителей и занимается разработкой ПО. В последние месяцы своей жизни Уильям наблюдал, как его младшая дочь Ребекка защищала диссертацию по космической физике с ее исследованиями в составе группы миссии Mars Atmosphere and Volatile Evolution (MAVEN).

Полезные материалы:
  • Статья в журнале West Coast Computer Faire 1977 года «The Design of a voice output adapter for computer» про адаптер голосового вывода для программистов с нарушениями зрения.
  • Подробности про 386BSD на Github.
  • Статья на Хабр про «Мифы FreeBSD».
  • Статья на Хабр про систему 386BSD «30 лет назад появилась свободная Unix-подобная OC… и это не Linux».
  • Serverspace добавил поддержку шаблона FreeBSD 13.1 в панель управления.
Источник: https://habr.com/ru/company/serverspace/blog/718396/


Интересные статьи

Интересные статьи

В декабре прошедшего года издание Data Centre Dynamics (DCD), освещающее события в сфере хранения и обработки данных подвело итоги года и обработав 7000 голосов специалистов присудила награды 14 номин...
Предлагаю ознакомиться с ранее размещенными материалами по проекту StarLink (SL): ‣ Часть 30. Сравнение сервиса StarLink с сервисами других операторов ШПД ‣ Часть 31. Описание антенны Ка-диапазо...
Мы уже вовсю собираем данные для зарплатного отчета за второе полугодие 2021, а пока продолжаем анализировать данные за первое. Сегодня рассказываем о том, сколько зарабатывали разработчики разных язы...
Несколько лет назад на JSConf 2018 выступил Райан Даль, создатель Node.js. Его доклад вызвал сенсацию, он затронул много актуальных проблем и поднял громкий хайп, не оставив равнодушным...
Всем привет. Если вы когда-либо работали с универсальными списками в Битрикс24, то, наверное, в курсе, что страница детального просмотра элемента полностью идентична странице редак...