Распространение программного обеспечения Беркли
Разработчик | Группа исследования компьютерных систем |
---|---|
Написано в | С |
Семейство ОС | Юникс |
Рабочее состояние | Снято с производства |
Исходная модель | Первоначально исходный код доступен , позже — с открытым исходным кодом. |
Первоначальный выпуск | 9 марта 1978 г |
Финальный выпуск | 4.4-Lite2 / июнь 1995 г |
Доступно в | Английский |
Платформы | ПДП-11 , ВАКС , Intel 80386 |
ядра Тип | Монолитный |
Пользовательское пространство | БСД |
Под влиянием | NetBSD , FreeBSD , OpenBSD , DragonFly BSD , NeXTSTEP , Дарвин |
Под влиянием | Юникс |
По умолчанию пользовательский интерфейс | оболочка Unix |
Лицензия | БСД |
Распространение программного обеспечения Беркли или стандартный дистрибутив Беркли [ 1 ] ( BSD ) — снятая с производства операционная система на базе Research Unix , разработанная и распространяемая Группой исследования компьютерных систем (CSRG) Калифорнийского университета в Беркли . Термин «BSD» обычно относится к ее потомкам с открытым исходным кодом, включая FreeBSD , OpenBSD , NetBSD и DragonFly BSD .
Первоначально BSD называлась Berkeley Unix , поскольку она была основана на исходном коде оригинальной Unix, разработанной в Bell Labs . В 1980-х годах BSD была широко принята поставщиками рабочих станций в виде проприетарных вариантов Unix, таких как DEC Ultrix и Sun Microsystems SunOS, благодаря ее разрешительному лицензированию и знакомству со многими основателями и инженерами технологических компаний. Эти проприетарные производные BSD были в значительной степени заменены в 1990-х годах UNIX SVR4 и OSF/1 .
Более поздние выпуски BSD послужили основой для нескольких операционных систем с открытым исходным кодом , включая FreeBSD, OpenBSD, NetBSD, DragonFly BSD, Darwin и TrueOS . Они, в свою очередь, использовались проприетарными операционными системами, включая Apple от macOS и iOS , которые произошли от них. [ 2 ] и Microsoft Windows (по крайней мере, с 2000 года и XP ), которая использовала (по крайней мере) часть своего кода TCP/IP, что было законно. [ 3 ] [ нужен лучший источник ] Код FreeBSD также использовался для создания операционных систем для PlayStation 5 . [ 4 ] PlayStation 4 , [ 5 ] PlayStation 3 , [ 6 ] PlayStation Вита , [ 7 ] и Нинтендо Свитч . [ 8 ] [ 9 ]
История
[ редактировать ]Самые ранние дистрибутивы Unix от Bell Labs в 1970-х годах включали исходный код операционной системы, что позволяло исследователям в университетах модифицировать и расширять Unix. Операционная система прибыла в Беркли в 1974 году по просьбе профессора информатики Боба Фабри , который входил в программный комитет симпозиума по принципам операционных систем , на котором впервые была представлена Unix. RSTS , Для работы системы был куплен PDP-11/45, но по бюджетным соображениям эта машина была передана группам математики и статистики в Беркли, которые использовали так что Unix работал на машине только восемь часов в день (иногда во время днем, иногда ночью). более крупный PDP-11/70 В следующем году был установлен в Беркли на деньги, полученные от проекта базы данных Ingres . [ 10 ]
BSD зародилась как вариант Unix, который программисты Калифорнийского университета в Беркли, первоначально возглавляемые Биллом Джоем, начали разрабатывать в конце 1970-х годов. Он включал дополнительные функции, которые были переплетены с кодом, принадлежащим AT&T.
В 1975 году Кен Томпсон взял творческий отпуск в Bell Labs и приехал в Беркли в качестве приглашенного профессора. Он помог установить Unix версии 6 и начал работать над языке Pascal реализацией системы на . Аспиранты Чак Хейли и Билл Джой усовершенствовали Паскаль Томпсона и внедрили улучшенный текстовый редактор, например . [ 10 ] Другие университеты заинтересовались программным обеспечением Беркли, и поэтому в 1977 году Джой приступил к составлению первого дистрибутива программного обеспечения Беркли (1BSD), который был выпущен 9 марта 1978 года. [ 11 ] 1BSD была дополнением к версии 6 Unix, а не полноценной операционной системой. Было разослано около тридцати экземпляров. [ 10 ]
Второй дистрибутив программного обеспечения Беркли (2BSD), выпущенный в мае 1979 года, [ 12 ] а также две новые программы от Joy, которые сохраняются в системах Unix по сей день: текстовый редактор vi ( визуальная версия ex ) и оболочка C. включены обновленные версии программного обеспечения 1BSD , Билл Джой разослал около 75 копий 2BSD. [ 10 ]
Компьютер VAX был установлен в Беркли в 1978 году, но порт Unix на архитектуру VAX, UNIX/32V VAX , не использовал возможности виртуальной памяти . Ядро Озалпа 32V было в значительной степени переписано, чтобы включить реализацию виртуальной памяти аспиранта Беркли Бабаоглу , а также полную операционную систему, включая новое ядро, порты утилит 2BSD на VAX, а утилиты 32V были выпущены как 3BSD на конец 1979 года. 3BSD также альтернативно называлась Virtual VAX/UNIX или VMUNIX (от Virtual Memory Unix), а образы ядра BSD обычно назывались /vmunix
до 4.4BSD.
После выпуска 4.3BSD в июне 1986 года было решено, что BSD отойдет от устаревшей платформы VAX. Платформа Power 6/32 (под кодовым названием «Tahoe»), разработанная Computer Consoles Inc., в то время казалась многообещающей, но вскоре после этого разработчики отказались от нее. Тем не менее, порт 4.3BSD-Tahoe (июнь 1988 г.) оказался ценным, поскольку привел к разделению машинно-зависимого и машинно-независимого кода в BSD, что улучшило будущую переносимость системы.
Помимо переносимости, CSRG работала над реализацией стека сетевых протоколов OSI , улучшениями системы виртуальной памяти ядра и (совместно с Ван Джейкобсоном из LBL ) новыми алгоритмами TCP/IP, чтобы приспособиться к росту Интернета. [ 13 ]
До этого все версии BSD использовали собственный код Unix AT&T и, следовательно, подпадали под действие лицензии на программное обеспечение AT&T. Лицензии на исходный код стали очень дорогими, и несколько сторонних сторон выразили заинтересованность в отдельной версии сетевого кода, который был разработан полностью вне AT&T и не подпадал под действие лицензионных требований. Это привело к появлению Networking Release 1 ( Net/1 ), который был доступен нелицензиатам кода AT&T и мог свободно распространяться в соответствии с условиями лицензии BSD . Он был выпущен в июне 1989 года.
После Net/1 разработчик BSD Кейт Бостик предложил выпускать больше разделов системы BSD, не принадлежащих AT&T, под той же лицензией, что и Net/1. С этой целью он начал проект по переопределению большинства стандартных утилит Unix без использования кода AT&T. В течение восемнадцати месяцев все утилиты AT&T были заменены, и было установлено, что в ядре осталось лишь несколько файлов AT&T. Эти файлы были удалены, и результатом стал выпуск в июне 1991 года Networking Release 2 (Net/2), почти полной операционной системы, которую можно было свободно распространять.
Net/2 был основой для двух отдельных портов BSD на архитектуру Intel 80386 : бесплатная 386BSD Уильяма ( BSDi и Линн Джолитц и проприетарная BSD/386 (позже переименованная в BSD/OS) от Berkeley Software Design ). Сама 386BSD просуществовала недолго, но стала исходной базой кода для проектов NetBSD и FreeBSD , которые были начаты вскоре после этого.
Вскоре у BSDi возникли юридические проблемы с дочерней компанией AT&T Unix System Laboratories (USL), которая в то время владела авторскими правами на System V и торговой маркой Unix. Иск USL против BSDi был подан в 1992 году и привел к запрету на распространение Net/2 до тех пор, пока не будет определена обоснованность претензий USL по авторским правам на источник. Судебный процесс замедлил развитие свободных программ-потомков BSD почти на два года, пока их правовой статус был под вопросом, и в результате системы, основанные на ядре Linux , не имевшие такой юридической двусмысленности, получили большую поддержку. Иск был урегулирован в январе 1994 года в основном в пользу Беркли. Из 18 000 файлов в дистрибутиве Беркли только три пришлось удалить и 70 изменить, чтобы показать уведомления об авторских правах USL. Еще одним условием мирового соглашения было то, что USL не будет подавать дальнейшие иски против пользователей и распространителей кода, принадлежащего Беркли, в предстоящем выпуске 4.4BSD. [ 14 ]
Последним выпуском в Беркли стал 4.4BSD-Lite Release 2 в 1995 году , после чего CSRG была распущена и разработка BSD в Беркли прекратилась. несколько вариантов, прямо или косвенно основанных на 4.4BSD-Lite (таких как FreeBSD , NetBSD , OpenBSD и DragonFly BSD С тех пор поддерживается ).
Разрешительный характер лицензии BSD позволил многим другим операционным системам, как с открытым исходным кодом , так и с проприетарным, включать исходный код BSD. Например, Microsoft Windows использовала код BSD в своей реализации TCP/IP. [ 15 ] BSD, командной строки и объединяет перекомпилированные версии сетевых инструментов начиная с Windows 2000 . [ 16 ] Darwin , основа macOS и iOS от Apple , основана на 4.4BSD-Lite2 и FreeBSD. Различные коммерческие операционные системы Unix, такие как Solaris , также включают код BSD.
Связь с исследовательской Unix
[ редактировать ]Начиная с 8-го издания, версии Research Unix в Bell Labs имели тесную связь с BSD. Это началось, когда 4.1cBSD для VAX была использована в качестве основы для Research Unix 8-го издания. Это продолжалось и в последующих версиях, таких как 9-е издание, которое включало исходный код и улучшения из 4.3BSD. В результате эти более поздние версии Research Unix были ближе к BSD, чем к System V. В сообщении Usenet от 2000 года Деннис Ритчи описал эту связь между BSD и Research Unix: [ 17 ] [ нужен лучший источник ]
Исследование Unix 8-го издания началось (я думаю) с BSD 4.1c, но с огромными объемами, извлеченными и замененными нашими собственными материалами. Это продолжалось с 9-го и 10-го числа. Я думаю, что обычный пользовательский набор команд был немного более BSD-привкусом, чем SysVish, но он был довольно эклектичным.
Связь с Системой V
[ редактировать ]Эрик С. Рэймонд резюмирует давние отношения между System V и BSD, заявляя: «Разрыв был примерно между длинношерстными и короткошерстными; программисты и технические специалисты, как правило, выстраивались в ряд с Беркли и BSD, более бизнес-ориентированные типы — с AT&T и System V. " [ 18 ]
В 1989 году Дэвид А. Карри написал о различиях между BSD и System V. Он охарактеризовал System V как часто рассматриваемую как «стандартную Unix». Однако он описал BSD как более популярную среди университетских и государственных компьютерных центров благодаря своим расширенным функциям и производительности: [ 19 ]
Большинство университетских и правительственных компьютерных центров, использующих UNIX, используют Berkeley UNIX, а не System V. Для этого есть несколько причин, но, пожалуй, две наиболее важные заключаются в том, что Berkeley UNIX предоставляет сетевые возможности, которые до недавнего времени (выпуск 3.0) были совершенно недоступны в System V. V, и что UNIX Беркли гораздо больше подходит для исследовательской среды, где требуется более быстрая файловая система, лучшая обработка виртуальной памяти и большее разнообразие языков программирования .
Технология
[ редактировать ]Розетки Беркли
[ редактировать ]Unix Беркли была первой Unix, включавшей библиотеки, поддерживающие стеки интернет-протоколов : сокеты Беркли . ARPAnet Unix-реализация предшественника IP, NCP , с клиентами FTP и Telnet , была разработана в Университете Иллинойса в 1975 году и доступна в Беркли. [ 20 ] [ 21 ] Однако нехватка памяти в PDP-11 привела к усложнению конструкции и проблемам с производительностью. [ 22 ]
операционной системы Unix Благодаря интеграции сокетов с файловыми дескрипторами стало почти так же легко, чтение и запись данных по сети как и доступ к диску. Лаборатория AT&T в конечном итоге выпустила собственную библиотеку STREAMS , которая включала большую часть той же функциональности в программный стек с другой архитектурой, но широкое распространение существующей библиотеки сокетов снизило влияние нового API . Ранние версии BSD использовались для создания Sun Microsystems компании SunOS , положив начало первой волне популярных рабочих станций Unix.
Бинарная совместимость
[ редактировать ]Некоторые операционные системы BSD могут запускать собственное программное обеспечение нескольких других операционных систем на той же архитектуре , используя уровень двоичной совместимости . Это намного проще и быстрее, чем эмуляция ; например, он позволяет приложения, предназначенные для Linux запускать , на полной скорости. Это делает BSD подходящими не только для серверных сред, но и для рабочих станций, учитывая растущую доступность коммерческого программного обеспечения или программного обеспечения с закрытым исходным кодом только для Linux. Это также позволяет администраторам переносить устаревшие коммерческие приложения, которые могли поддерживать только коммерческие варианты Unix, в более современную операционную систему, сохраняя функциональность таких приложений до тех пор, пока они не будут заменены лучшей альтернативой.
Стандарты
[ редактировать ]Текущие варианты операционной системы BSD поддерживают многие распространенные стандарты IEEE , ANSI , ISO и POSIX , сохраняя при этом большую часть традиционного поведения BSD. Как и AT&T Unix , ядро BSD является монолитным , что означает, что драйверы устройств в ядре работают в привилегированном режиме как часть ядра операционной системы.
Потомки BSD
[ редактировать ]Несколько операционных систем основаны на BSD, включая FreeBSD , OpenBSD , NetBSD , MidnightBSD , MirOS BSD , GhostBSD , Darwin и DragonFly BSD . И NetBSD, и FreeBSD были созданы в 1993 году. Первоначально они были производными от 386BSD (также известной как «Jolix») и объединили исходный код 4.4BSD-Lite в 1994 году. OpenBSD была ответвлением NetBSD в 1995 году, а DragonFly BSD — ответвлением от FreeBSD в 2003 году.
BSD также использовалась в качестве основы для нескольких проприетарных версий Unix, таких как Sun от SunOS , Sequent от DYNIX , NeXT от NeXTSTEP , DEC от Ultrix и OSF/1 AXP (теперь Tru64 UNIX ). NeXTSTEP позже стал основой для Apple от macOS Inc.
См. также
[ редактировать ]- BSD Демон
- Лицензии BSD
- Сравнение операционных систем BSD
- Список операционных систем BSD
- Lumina (среда рабочего стола)
- Unix-войны
Ссылки
[ редактировать ]- ^ «Почему вам следует использовать лицензию в стиле BSD для вашего проекта с открытым исходным кодом» . Проект FreeBSD . BSD (стандартное распределение Беркли) . Проверено 3 августа 2021 г.
- ^ «Руководство по программированию ядра Apple: обзор BSD» . Проверено 27 марта 2021 г.
- ^ «На самом деле Windows ДЕЙСТВИТЕЛЬНО использует некоторый код BSD» . Архивировано из оригинала 25 марта 2018 года . Проверено 24 марта 2018 г.
- ^ «Ядро» . Вики для разработчиков PlayStation 5 .
- ^ «Программное обеспечение с открытым исходным кодом, используемое в PlayStation 4» . Архивировано из оригинала 12 декабря 2017 года . Проверено 3 октября 2019 г.
- ^ «Программное обеспечение с открытым исходным кодом, используемое в PlayStation 3» . Архивировано из оригинала 11 ноября 2017 года . Проверено 8 декабря 2022 г.
- ^ «Программное обеспечение с открытым исходным кодом, используемое в PlayStation Vita» . Архивировано из оригинала 12 декабря 2017 года . Проверено 8 декабря 2022 г.
- ^ связанного с продуктами Nintendo | Информация о поддержке | Nintendo» . www.nintendo.co.jp , Архивировано из оригинала 26 июля . 2020 г. «Страница распространения исходного кода программного обеспечения с открытым исходным кодом
- ^ Цао (8 марта 2017 г.). «Nintendo Switch работает под управлением FreeBSD» . FreeBSDNews.com . Архивировано из оригинала 26 июля 2020 года . Проверено 26 июля 2020 г.
- ^ Перейти обратно: а б с д Салус, Питер Х. (2005). «Глава 7. BSD и CSRG» . Демон, Гну и Пингвин . Гроклав . Архивировано из оригинала 14 июня 2020 года . Проверено 6 сентября 2017 г.
- ^ Здоровье (1994), с. 142
- ^ Туми, Уоррен. «Сведения об архивах ПУПС» . tuhs.org . Общество наследия Unix . Архивировано из оригинала 9 июля 2006 года . Проверено 6 октября 2010 г.
- ^ МакКьюсик, МК; Карелс, MJ; Склоуэр, Кейт; Фолл, Кевин; Тейтельбаум, Марк; Бостик, Кейт (1989). «Текущие исследования Исследовательской группы компьютерных систем Беркли» (PDF) . Материалы весенней конференции Европейской группы пользователей Unix .
- ^ Эрик С. Рэймонд. «Искусство программирования для Unix: истоки и история Unix, 1969–1995» . Архивировано из оригинала 5 октября 2014 года . Проверено 18 июля 2014 г.
- ^ Барр, Адам (19 июня 2001 г.). «Microsoft, TCP/IP, открытый исходный код и лицензирование» . Архивировано из оригинала 14 ноября 2005 года . Проверено 7 июня 2019 г.
- ^ «BSD-код в Windows» . all2.com . 20 марта 2001 года. Архивировано из оригинала 25 августа 2008 года . Проверено 20 января 2009 г.
- ^ Деннис Ричи (26 октября 2000 г.). «alt.folklore.computers: BSD (Деннис Ритчи)» . Архивировано из оригинала 14 июля 2014 года . Проверено 3 июля 2014 г.
- ^ Раймонд, Эрик С. Искусство программирования для Unix. 2003. с. 38
- ^ Карри, Дэвид. Использование C в системе UNIX: Руководство по системному программированию. 1989. стр. 2–3.
- ^ Чессон, GL (1976). «Сетевая система Unix» . Обзор операционных систем ACM SIGOPS . 9 (5): 60–66. дои : 10.1145/1067629.806522 .
- ^ RFC 681
- ^ Квартерман, Джон С.; Зильбершац, Авраам; Петерсон, Джеймс Л. (декабрь 1985 г.). «4.2BSD и 4.3BSD как примеры системы Unix». Вычислительные опросы . 17 (4): 379–418. CiteSeerX 10.1.1.117.9743 . дои : 10.1145/6041.6043 . S2CID 5700897 .
Библиография
[ редактировать ]- Маршалл К. МакКьюсик, Кейт Бостик, Майкл Дж. Карелс, Джон С. Куортермейн, Проектирование и реализация операционной системы 4.4BSD (Аддисон Уэсли, 1996; ISBN 978-0-201-54979-9 )
- Маршалл К. МакКьюсик, Джордж В. Невилл-Нил, Проектирование и реализация операционной системы FreeBSD (Аддисон Уэсли, 2 августа 2004 г.); ISBN 978-0-201-70245-3 )
- Сэмюэл Дж. Леффлер, Маршалл К. МакКьюсик, Майкл Дж. Карелс, Джон С. Квартерман , Проектирование и реализация операционной системы UNIX 4.3BSD (Аддисон Уэсли, ноябрь 1989 г.; ISBN 978-0-201-06196-3 )
- МакКьюсик, Маршалл Кирк (январь 1999 г.). «Двадцать лет Berkeley Unix - от собственности AT&T до свободно распространяемого» . В Дибоне, Крис; Окман, Сэм; Стоун, Марк (ред.). Открытые источники: голоса революции (первое изд.). О'Рейли. ISBN 978-1-56592-582-3 .
- Питер Х. Салус , Демон, GNU и Пингвин (Reed Media Services, 1 сентября 2008 г.; ISBN 978-0-9790342-3-7 )
- Питер Х. Салус , Четверть века UNIX (Аддисон Уэсли, 1 июня 1994 г.; ISBN 978-0-201-54777-1 )
- Питер Х. Салус , «Забрасывая сеть» (Аддисон-Уэсли, март 1995 г.; ISBN 978-0-201-87674-1 )
Внешние ссылки
[ редактировать ]- Распространение программного обеспечения Беркли в Curlie
- Хронология BSD и исследований UNIX
- История UNIX - История UNIX и BSD с использованием диаграмм.
- Проектирование и реализация операционной системы 4.4BSD
- Дерево Unix: исходный код и руководства для старых версий Unix.
- EuroBSDCon , ежегодное мероприятие в Европе, проводимое в сентябре, октябре или ноябре, основанное. Архивировано 20 июня 2020 года в Wayback Machine в 2001 году.
- BSDCan — конференция в Оттаве, Онтарио , Канада, проводится ежегодно в мае с 2004 года, в июне с 2015 года.
- AsiaBSDCon — конференция в Токио, проводимая ежегодно в марте каждого года, начиная с 2007 года.
- mdoc.su — краткие URL-адреса страниц руководства для FreeBSD, OpenBSD, NetBSD и DragonFly BSD , веб-сервиса , написанного на nginx.
- BXR.SU — Super User's BSD Cross Reference , поисковая система по пользовательскому пространству и исходному коду ядра, основанная на OpenGrok и nginx.
- Распространение программного обеспечения Беркли
- программное обеспечение 1977 года
- Продукты и услуги, производство которых прекращено в 1995 г.
- Свободное программное обеспечение, операционные системы
- Бесплатное программное обеспечение, написанное на C.
- Семейства операционных систем
- Наука и технологии в районе залива Сан-Франциско
- Калифорнийский университет, Беркли