Когда мы говорим о свободно распространяемой Unix-подобной операционной системе с открытым исходным кодом, то обычно подразумеваем Linux. Однако в начале 90-х существовал как минимум еще один подобный проект, релиз первой полнофункциональной версии которого состоялся ровно 30 лет назад, 14 июля 1992 года. Речь идет об операционной системе 386BSD, также известной под названием Jolix. Если вы подзабыли о существовании этой любопытной платформы, самое время немного освежить память.

История проекта 386BSD уходит корнями еще в 80-е, и в общих чертах напоминает историю появления Linux. Здесь тоже сыграли ведущую роль бывшие студенты, а именно, семейная пара Уильям и Линн Джолиц (Lynne Jolitz, William Jolitz), обучавшиеся в Калифорнийском университете в Беркли. Именно там они познакомились с операционной системой BSD версий 2.8 и 2.9, в разработке которой приняли участие, и именно там им пришла в голову идея портировать эту ОС для 32-разрядных процессоров Intel 80386, самых мощных и современных на тот исторический момент.

Работы начались в 1989 году. Параллельно с этим в Беркли трудились над переносом на платформу Intel собственного кода — 4.3 BSD-Reno и 4.3 BSD Net/2, причем в этих проектах принимал непосредственное участие Уильям Джолиц. Тогда же под влиянием Ричарда Столлмана разработчики начали понемногу удалять из исходников BSD несвободные компоненты, подпадающие под проприетарную лицензию AT&T UNIX, но наличие значительного объема такого кода заметно тормозило процесс. Все свои наработки, созданные в процессе работы над кодом BSD в Беркли, Уильям Джолиц решил использовать для создания собственной свободно распространяемой операционной системы, базирующейся на 4.3 BSD Net/2, и дополненной кодом, написанным им с женой самостоятельно.

Первая версия 386BSD 0.0, которую Уильям и Линн Джолиц представили 12 марта 1992 года, была еще сырой и неработоспособной — ОС включала в себя целый ряд несвободных приложений, а некоторые компоненты и вовсе отсутствовали. А вот версию 0.1, появившуюся на свет как раз 14 июля 1992 года, уже можно было назвать полноценным релизом. По крайней мере, эта редакция 386BSD предоставляла пользователю все необходимые возможности для нормальной работы.



Вся операционная система целиком помещалась на одну загрузочную дискету. Вскоре после выпуска версии 0.1 группа пользователей-энтузиастов начала создавать исправления и дополнения для 386BSD, выпускавшиеся в виде набора неофициальных патчей. Примерно в то же время возник и стал развиваться еще один похожий проект под названием BSD/386, который часто путают с разработкой Джолицев. Эта версия ОС была выпущена основанной в Беркли компанией BSDi (Berkeley Software Design Inc.), которой руководил Донн Сили, и также опиралась на исходники 4.3 BSD Net/2. Несмотря на многочисленные слухи, серьезной конкуренции между 386BSD и BSD/386 не было и в помине, скорее наоборот: Уильям Джолиц и Сили работали вместе над проектами для компании UUNET, и Уильям даже передавал Сили часть своего кода для тестирования.

Несмотря на то, что некоторые источники указывают, будто разработчики 386BSD были вовлечены в судебные разбирательства со стороны AT&T — владельца ряда коммерческих лицензий на ОС UNIX, — это не совсем верно. Претензии UNIX System Laboratories, Inc, подразделения AT&T, были адресованы как раз-таки разработчикам BSD/386 — компании BSDi, и касались части исходного кода Net/2, который Сили использовал в коммерческих целях. Поскольку семейство Джолиц распространяло свою 386BSD бесплатно, к ним-то как раз ни у кого никаких претензий не возникло. Ни разработанный ими код для 386BSD, ни код, позаимствованный из Net/2, никогда не был предметом каких-либо судебных исков.

Основными отличительными особенностями 386BSD стала новая система безопасности с ролевым доступом, Р2Р-загрузка, а также более простое, наглядное и упорядоченное по сравнению с другими существовавшими на тот момент версиями BSD конфигурирование ОС. Все эти особенности и привлекали пользователей. Однако между Уильям и Линн Джолиц с одной стороны, и энтузиастиами, разрабатывавшими для их детища неофициальные патчи и улучшения, разгорелся нешуточный конфликт. Джолицы желали сами контролировать развитие своего проекта, а потому не хотели включать сторонние пакеты, расширявшие возможности системы, в официальные обновления 386BSD. Также они отказывались добавлять в следующие релизы некоторые обновления, созданные комьюнити. Энтузиасты, потратившие на доработку проекта Джолицев массу времени, не на шутку обиделись, сделали форк системы, включили в него все созданные ими дополнения и назвали получившийся продукт FreeBSD — релиз этой свободной ОС состоялся 1 ноября 1993 года. А еще раньше, в апреле 93-го, увидел свет другой форк 386BSD — NetBSD, ставивший своей целью развитие свободной BSD-совместимой системы с упором на кроссплатформенность.

Несмотря на появление близнецов-конкурентов, в конце 1994 года Джолицы выпустили релиз 1.0 386BSD — он содержал принципиально новую реализацию ядра, множество дополнительных компонентов, занимал без малого 600 мегабайт и распространялся на компакт-диске. Но поддерживаемые комьюнити проекты FreeBSD и NetBSD настолько быстро набирали популярность, что авторы понемногу утратили интерес к своему детищу, и к 1997 году перестали обновлять систему. Только 5 августа 2016 года сын основателей проекта, Бен Джолиц выложил на GitHub обновленную версию 386BSD, получившую порядковый номер 2.0. Правда, changelog для этой версии почему-то так и не был опубликован.

Все права на исходный код 386BSD и JOLIX в настоящее время принадлежат исключительно Уильяму Джолиц и Линн Джолиц, но система по-прежнему доступна для свободного скачивания и некоммерческого использования. Линн сделала успешную карьеру в Кремниевой долине, организовала несколько стартапов в области разработки ПО и регулярно пишет статьи для журнала BYTE. Сейчас она живет в городе Лос-Гатос, Калифорния. Уильям Джолиц, до последнего принимавший непосредственное участие в коммерческих проектах своей жены, скончался от онкологического заболевания 2 марта 2022 года. Их сын, Билл, продолжает дело родителей и занимается разработкой ПО, уделяя особое внимание операционным системам с открытым исходным кодом.

Комментарии (15)


  1. saipr
    14.07.2022 10:44
    +5

    Странно, а я про неё ничего не слышал, хотя c BSD знаком.


    30 лет назад появилась свободная Unix-подобная OC… и это не Linux

    А ещё 35 лет назад появилась другая свободная Unix-подобная OC… и это Minix.


    1. ReadOnlySadUser
      14.07.2022 14:49

      Осталось узнать, когда же появился сам Unix :)


      1. K1804
        15.07.2022 10:40

        Осталось узнать, когда же появился сам Unix :)

        Когда Multics показалась слишком сложной.


    1. maisvendoo
      14.07.2022 14:50
      +4

      другая свободная Unix-подобная OC… и это Minix.

      Какая же она свободная, если Таненбаум, на тот момент, не допускал сторонних разработчиков к модификации исходников. На них можно было только смотреть, или втихушку у себя переписывать, без возможности добавить изменения в официальный релиз. Где тут свобода?

      Продукт с открытым кодом != Свободный продукт


      1. tormozedison
        14.07.2022 16:34
        +1

        Он был связан договором с издательством, поскольку распространял носители с Minix в комплекте с учебником. Затем расторг этот договор и перевыпустил ОС под свободной лицензией


        1. maisvendoo
          15.07.2022 10:14

          Затем расторг этот договор и перевыпустил ОС под свободной лицензией

          задолго после того, как GNU/Linux, и BSD-подобные системы получили широкое распространение. Так что утверждать, что Minix 35 лет назад была свободной, по меньшей мере странно


      1. saipr
        14.07.2022 19:15
        +1

        Да, вы правы!
        Свободная, в смысле можно использовать, а ещё, по крайней мере для меня немаловажно, что можно изучать исходный код и т.д. В своё время, когда персоналки в СССР только появлялись, Minix очень даже помогал.
        Мы его использовали на ЕС-1840 с 1987 года.


        1. maisvendoo
          15.07.2022 10:40

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

          Простите моё занудство, но для сказанного вами существует вполне четкое определение - продукт с открытым исходным кодом, OpenSource. Free Software всё же несколько иное понятие.

          можно изучать исходный код и т.д.

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

          Но вот теперь-то конечно - Minix, о чем я с удивлением узнал недавно, просочилась например в Intel Management Engine. Но не 35 лет назад...


      1. Virusmater
        15.07.2022 11:10
        +2

        Никто не обязан принимать сторонние pull requests и сейчас. Это делает продукт несвободным?


        1. maisvendoo
          15.07.2022 12:31

          Не делает, конечно.
          Но, существующее ныне свободное ПО, тот же Linux, можно получить, не приобретая при этом ещё и книгу об его устройстве. На момент, описываемый комментатором, Minix распространялся, официально, вместе с книгой Таненбаума, причем не бесплатно. Централизованного хранилища исходных текстов не было, а значит и pull requests в известном смысле не было даже возможности предложить.

          Minix 3 - свободная ОС, Minix 1 образца 1987 года - нет, так как существовали ограничения в реализации четырех свобод, декларируемых в определении свободного ПО


          1. Virusmater
            15.07.2022 12:40

            Ситуация вполне себе подходит под GNU GPL - доступ к исходникам должен даваться по запросу после покупки ПО

            http://www.gnu.org/philosophy/selling.html


            1. maisvendoo
              15.07.2022 12:46

              На 1987 год ПО и так, вместе с исходниками, предоставлялось при покупке книги. Так что продавалось - ПО, или книга + ПО?

              К тому же, я подчеркиваю - лицензия Minix с 1987 по 2000 год была проприетарной

              Лицензия Minix с версии 1.7.0 по 2.0.2

              LICENSE AGREEMENT AND LIMITED WARRANTY

              READ THE FOLLOWING TERMS AND CONDITIONS CAREFULLY BEFORE YOU
              PROCEED.  THIS LEGAL DOCUMENT IS AN AGREEMENT BETWEEN YOU AND
              PRENTICE-HALL, INC.  (THE "COMPANY"). BY ACCESSING THE SOFTWARE, YOU
              ARE AGREEING TO BE BOUND BY THESE TERMS AND CONDITIONS. IF YOU DO
              NOT AGREE WITH THESE TERMS AND CONDITIONS, DO NOT ACCESS TO SOFTWARE
              AND ALL ACCOMPANYING ITEMS.
              
              1. GRANT OF LICENSE:
              In consideration of your agreement to abide by the terms and
              conditions of this Agreement, the Company grants to you a
              nonexclusive right to use, display and modify the Software being
              transmitted to you (hereinafter "the Software") for educational and
              research purposes and to include such Software as part of another
              computer program (i) for use by you; or (ii) for use by third
              parties, provided that copies to those third parties are distributed
              for educational or research purposes free of direct or indirect
              charges. If you wish to otherwise use or distribute the Software,
              you must enter into a separate agreement with the Company. To do so,
              please contact the person designated below.
              
              This license shall continue in effect so long as you comply with the
              terms of this Agreement and will automatically terminate if you fail
              to comply. The Company is and shall remain the copyright owner of
              the Software and reserves all rights not expressly granted to you
              under this Agreement. All provisions of this Agreement as to
              warranties, limitation of liability, remedies or damages and
              ownership rights shall survive termination.
              
              2. MISCELLANEOUS: 
              This Agreement shall be construed in accordance with the laws of the
              United States of America and the State of New York and shall benefit
              the Company, its affiliates and assignees.
              
              3. LIMITED WARRANTY AND DISCLAIMER OF WARRANTY:
              Because this Software is being given to you without charge, the
              Company makes no warranties about the SOFTWARE, which is provided
              "AS-IS." THE COMPANY DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED,
              INCLUDING WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
              MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE COMPANY
              DOES NOT WARRANT, GUARANTEE OR MAKE ANY REPRESENTATION REGARDING THE
              USE OR THE RESULTS OF THE USE OF THE SOFTWARE.  IN NO EVENT SHALL
              THE COMPANY OR ITS EMPLOYEES, AGENTS, SUPPLIERS OR CONTRACTORS BE
              LIABLE FOR ANY INCIDENTAL, INDIRECT, SPECIAL OR CONSEQUENTIAL
              DAMAGES ARISING OUT OF OR IN CONNECTION WITH THE LICENSE GRANTED
              UNDER THIS AGREEMENT INCLUDING, WITHOUT LIMITATION, LOSS OF USE,
              LOSS OF DATA, LOSS OF INCOME OR PROFIT, OR OTHER LOSSES SUSTAINED AS
              A RESULT OF INJURY TO ANY PERSON, OR LOSS OF OR DAMAGE TO PROPERTY,
              OR CLAIMS OF THIRD PARTIES, EVEN IF THE COMPANY OR AN AUTHORIZED
              REPRESENTATIVE OF THE COMPANY HAS BEEN ADVISED OF THE POSSIBILITY OF
              SUCH DAMAGES.
              
              SOME JURISDICTIONS DO NOT ALLOW THE LIMITATION OF IMPLIED WARRANTIES
              OR LIABILITY FOR INCIDENTAL, INDIRECT, SPECIAL OR CONSEQUENTIAL
              DAMAGES, SO THE ABOVE LIMITATIONS MAY NOT ALWAYS APPLY. YOU MAY HAVE
              RIGHTS WHICH VARY IN ACCORDANCE WITH LOCAL LAW.
              
              
              		    ACKNOWLEDGMENT
              
              YOU ACKNOWLEDGE THAT YOU HAVE READ THIS AGREEMENT, UNDERSTAND IT AND
              AGREE TO BE BOUND BY ITS TERMS AND CONDITIONS. YOU ALSO AGREE THAT
              THIS AGREEMENT IS THE COMPLETE AND EXCLUSIVE STATEMENT OF THE
              AGREEMENT BETWEEN YOU AND THE COMPANY AND SUPERSEDES ALL PROPOSALS
              OR PRIOR AGREEMENTS, ORAL OR WRITTEN, AND ANY OTHER COMMUNICATIONS
              BETWEEN YOU AND THE COMPANY OR ANY REPRESENTATIVE OF THE COMPANY
              RELATING TO THE SUBJECT MATTER OF THIS AGREEMENT.
              
              Should you have any questions concerning this agreement or if you
              wish to contact the Company for any reason, please contact
              
              Alan Apt (alan_apt@prenhall.com)
              Prentice Hall
              2629 Redwing Rd.
              Suite #260
              Ft.Collins,CO 80526
              

              Текст взят здесь. Прочтите, там например, указывается, что ПО может быть использовано исключительно в образовательных и исследовательских целях. Коммерческое использование данной лицензией не предусматривается, а это уже нарушение определения Free Software


  1. thesame
    14.07.2022 12:46
    +5

    Исходно BSD (Berkeley Software Distribution) родилась, как набор патчей к оригинальному коду ATT, который начал распространять на лентах аспирант Беркли по имени Билл Джой. Когда Джой ушел в Sun, его дело продолжил Кирк МакКузик. Пока ATT распространяли Unix сами, все было нормально, но после выделения в отдельную фирму USL, начали возникать патентные проблемы, поэтому было принято решение очистить код BSD от проприетарных файлов. В Net/2 задача была практически выполнена, оставалось переписать 6 файлов, что и сделал Билл Джолиц.

    Насчет конфликта - сильно сказано. Мне кажется, что Джолицу его проект понемногу надоел, поэтому он не стал возиться с патчами, которые ему присылали пользователи. Поскольку он никак не объяснил свое решение, то группа хакеров (в прежнем значении этого слова) форкнула 386BSD и стала развивать его самостоятельно.

    Достаточно подробно эта история (включая юридический конфликт с ATT) изложена в первой главе книги МакКузика и Джорджа Невилл-Лина "FreeBSD: архитектура и реализация".


  1. Afranius
    14.07.2022 21:44
    +3

    Поправка: FreeBSD - НЕ Unix-подобная, она ЧИСТЫЙ Unix
    Не Unix-like
    FreeBSD является прямым потомком BSD UNIX® и основывается на некоторых ключевых концепциях UNIX®.
    https://docs.freebsd.org/ru/books/handbook/basics/


    1. maisvendoo
      15.07.2022 10:21
      +2

      FreeBSD - НЕ Unix-подобная, она ЧИСТЫЙ Unix

      Она прошла сертификацию на соответствие SUS (Single UNIX Specification)?

      Насколько я знаю, она не прошла таковую сертификацию. И не все версии macOS (вопреки досужим вымыслам её поклонников) таковую прошли.

      https://docs.freebsd.org/ru/books/handbook/basics/

      что это доказывает?

      основывается на некоторых ключевых концепциях UNIX

      Linux тоже основывается на некоторых ключевых концепциях UNIX, но это не позволяет считать его "чистым" юниксом. Равно как и FreeBSD

      Вообще, если так посмотреть, "чистые" юниксы в природе не водятся - список ОС сертифицированных на соответствие SUS довольно мал, и каждый представитель его соответствует какой-то определенной версии стандарта. Так что спорить тут можно, конечно, до хрипоты