Открыть сервис

BSD

BSD — это семейство операционных систем, основанных на исходном коде Unix, разработанном в Калифорнийском университете в Беркли (Berkeley Software Distribution). BSD представляет собой не единую операционную систему, а группу свободно распространяемых Unix-подобных систем, которые объединяет общее происхождение от оригинального кода BSD Unix, выпущенного в 1970-х — 1990-х годах. Ключевыми характеристиками BSD являются высокая стабильность, безопасность, строгое следование стандартам POSIX и использование лицензии BSD, которая налагает меньше ограничений на использование и распространение кода, чем лицензия GNU General Public License (GPL).

История

Истоки в Беркли

Разработка BSD началась в 1977 году в Калифорнийском университете в Беркли, когда студент Билл Джой создал первую версию дистрибутива, включавшую компилятор Pascal и текстовый редактор ex. Изначально BSD представлял собой набор дополнений к операционной системе AT&T Unix, распространявшейся по лицензии от Bell Labs. Первым полноценным релизом стала версия 4.1cBSD, выпущенная в 1981 году, которая включала улучшенную файловую систему (Fast File System) и поддержку виртуальной памяти.

В 1983 году вышла версия 4.2BSD, которая стала одной из самых влиятельных в истории Unix. Она включала стек протоколов TCP/IP, что сыграло решающую роль в развитии интернета. Именно в BSD была реализована первая широко используемая реализация сокетов (sockets) — интерфейса для сетевого взаимодействия между процессами. Стек TCP/IP из BSD был впоследствии адаптирован для многих других операционных систем, включая ранние версии Microsoft Windows.

Отделение от AT&T

К концу 1980-х годов BSD содержал значительный объём оригинального кода, не принадлежавшего AT&T. Однако лицензионные ограничения на код AT&T Unix препятствовали свободному распространению BSD. В 1989 году Университет Беркли выпустил Networking Release 1 (Net/1), который распространялся по свободной лицензии и не содержал кода AT&T. Полное освобождение от кода AT&T произошло в 1991 году с выходом Networking Release 2 (Net/2).

На основе Net/2 были созданы первые полностью свободные версии BSD: 386BSD (выпущенная Уильямом и Линн Джолитц в 1992 году) и BSD/386 (коммерческий продукт компании Berkeley Software Design, Inc.). Судебный иск AT&T против BSDI и Университета Беркли (1992—1994) оспаривал право на распространение Net/2, но в итоге был урегулирован мировым соглашением, признавшим законность свободного распространения BSD. В 1994 году вышла 4.4BSD-Lite, которая стала последним официальным релизом от Университета Беркли и основой для всех современных BSD-систем.

Современные BSD-системы

После прекращения разработки в Беркли основные BSD-системы продолжили развиваться независимо. Наиболее известными и широко используемыми являются четыре проекта:

FreeBSD

FreeBSD — наиболее популярная BSD-система, ориентированная на производительность, масштабируемость и широкую поддержку аппаратного обеспечения. Первая версия вышла в 1993 году. FreeBSD используется на веб-серверах, в дата-центрах, встраиваемых системах и как основа для многих коммерческих продуктов (например, операционная система PlayStation 4 от Sony, сетевые устройства Juniper Networks). Ключевые особенности: порты (система установки программного обеспечения из исходных кодов), пакетный менеджер pkg, поддержка файловой системы ZFS, развитая система виртуализации (jail).

NetBSD

NetBSD — система, известная своей переносимостью на различные аппаратные платформы. Поддерживает более 50 архитектур, от мейнфреймов до встраиваемых устройств. Девиз проекта: «Of course it runs NetBSD» (Конечно, это работает на NetBSD). Первая версия вышла в 1993 году. NetBSD часто используется во встраиваемых системах, робототехнике и научных проектах, где требуется работа на нестандартном оборудовании.

OpenBSD

OpenBSD — система, ориентированная на безопасность и аудит кода. Основана в 1995 году как форк NetBSD. Разработчики OpenBSD известны строгим контролем качества кода, активным поиском уязвимостей и внедрением защитных механизмов. OpenBSD является эталоном безопасности среди свободных операционных систем. Включает собственный стек OpenSSH (самая популярная реализация SSH в мире), pf (пакетный фильтр), а также множество других инструментов безопасности. Проект выпускает два релиза в год и известен своей документацией.

DragonFly BSD

DragonFly BSD — форк FreeBSD 4.8, созданный в 2003 году разработчиком Мэттом Диллоном. Основное отличие — использование собственной файловой системы Hammer/Hammer2 и архитектуры, оптимизированной для многопроцессорных систем и кластерных вычислений. DragonFly BSD менее распространена, чем три основных BSD, но имеет активное сообщество.

Лицензия BSD

Лицензия BSD (Berkeley Software Distribution License) — это разрешительная лицензия на свободное программное обеспечение. В отличие от копилефтных лицензий (например, GPL), лицензия BSD не требует, чтобы производные работы распространялись под той же лицензией. Это позволяет использовать код BSD в проприетарном (закрытом) программном обеспечении.

Существует несколько вариантов лицензии BSD:

  • Двухпунктовая (2-clause BSD) — требует сохранения уведомления об авторских правах и отказа от ответственности.
  • Трёхпунктовая (3-clause BSD) — дополнительно запрещает использовать имя автора или организации для продвижения производных продуктов без разрешения.
  • Четырёхпунктовая (4-clause BSD) — содержала пункт об обязательной рекламе, который впоследствии был признан проблемным и редко используется.

Лицензия BSD (особенно 2-clause и 3-clause) широко используется в индустрии, в том числе в ядре Linux (часть кода сетевого стека), в проектах Google (Go, Chromium), в операционной системе macOS (основана на коде FreeBSD) и многих других.

Применение

BSD-системы применяются в различных областях:

  • Серверное использование: FreeBSD — одна из самых популярных систем для веб-серверов (например, серверы Yahoo!, WhatsApp, Netflix). Высокая стабильность и производительность делают её предпочтительной для критически важных сервисов.
  • Встраиваемые системы: NetBSD и FreeBSD используются в маршрутизаторах, сетевых хранилищах (NAS), промышленных контроллерах, игровых консолях (PlayStation 3, 4, 5).
  • Безопасность: OpenBSD применяется в системах, требующих повышенной защиты: межсетевых экранах, серверах безопасности, криптографических шлюзах.
  • Образование и исследования: BSD-системы используются в университетах для изучения операционных систем, сетевых протоколов и архитектуры ядра.
  • Разработка программного обеспечения: многие инструменты и библиотеки, созданные в проектах BSD, стали стандартом в индустрии (OpenSSH, pf, jails, ZFS).

Отличия от Linux

Хотя BSD и Linux являются Unix-подобными системами, между ними есть принципиальные различия:

  • Лицензия: BSD использует разрешительную лицензию, Linux — GPL (копилефт). Это влияет на модели распространения и коммерческого использования.
  • Архитектура: BSD — это целостная операционная система, где ядро, утилиты и библиотеки разрабатываются и поставляются как единый проект. Linux — только ядро, а пользовательское окружение (GNU utilities, дистрибутивы) создаётся отдельно.
  • Управление пакетами: в BSD используется система портов (сборка из исходных кодов) и бинарные пакеты, в Linux — различные пакетные менеджеры (apt, yum, pacman).
  • Сетевая подсистема: в BSD сетевая архитектура считается более зрелой и интегрированной, особенно в FreeBSD и OpenBSD.
  • Безопасность: OpenBSD и FreeBSD традиционно уделяют больше внимания аудиту кода и встроенным механизмам защиты (например, W^X, случайное размещение памяти, принудительный контроль доступа).

Интересные факты

  • Операционная система macOS (ныне macOS) от Apple основана на ядре XNU, которое включает код из FreeBSD (сетевой стек, файловая система, библиотеки). Также значительная часть пользовательского окружения macOS (например, командная строка) происходит из FreeBSD.
  • Подсистема Windows Subsystem for Linux (WSL2) использует сетевой стек, основанный на коде FreeBSD.
  • Проект OpenSSH, созданный разработчиками OpenBSD, является самой распространённой реализацией протокола SSH в мире и используется в большинстве операционных систем, включая Linux, macOS и Windows.
  • BSD-системы являются одними из немногих, которые поддерживают работу на аппаратных платформах, снятых с производства десятилетия назад (например, VAX, MIPS, SPARC).

Источники

  • McKusick, M. K., Bostic, K., Karels, M. J., & Quarterman, J. S. (1996). The Design and Implementation of the 4.4BSD Operating System. Addison-Wesley.
  • Nemeth, E., Snyder, G., Seebass, S., & Hein, T. R. (2000). Unix System Administration Handbook. Prentice Hall.
  • Официальная документация проектов FreeBSD, NetBSD, OpenBSD, DragonFly BSD.
  • A Quarter Century of BSD (1993) — статья о истории BSD в журнале «;login:».

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →