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

4.4BSD-Lite

4.4BSD-Lite — это версия операционной системы семейства BSD (Berkeley Software Distribution), выпущенная в 1994 году Калифорнийским университетом в Беркли. Она представляет собой свободно распространяемую, очищенную от лицензионных ограничений AT&T Unix редакцию исходного кода, которая стала основой для многих современных BSD-систем, включая FreeBSD, NetBSD и OpenBSD. 4.4BSD-Lite является последней версией BSD, разработанной непосредственно в Computer Systems Research Group (CSRG) Беркли, и знаменует собой завершение эпохи академической разработки Unix.

История

Предпосылки создания

К началу 1990-х годов BSD-системы, разрабатывавшиеся в Беркли, включали в себя значительный объём кода, лицензированного у AT&T. Это было связано с тем, что ранние версии BSD (1BSD, 2BSD) базировались на исходных текстах Unix Version 6 и Version 7. Впоследствии, в 4.3BSD и 4.3BSD Tahoe, код AT&T был частично заменён, но оставался в ядре и некоторых утилитах. Это создавало юридические препятствия для свободного распространения BSD за пределами академических кругов.

Судебный процесс USL против BSDi

В 1992 году компания Unix System Laboratories (USL), принадлежавшая AT&T, подала иск против Berkeley Software Design, Inc. (BSDi) и Калифорнийского университета. USL утверждала, что BSDi нарушает авторские права AT&T, распространяя коммерческую версию BSD/OS, а также что исходный код 4.3BSD содержит конфиденциальную интеллектуальную собственность AT&T. Судебный процесс длился около двух лет и создал неопределённость вокруг легальности распространения BSD-систем.

Выпуск 4.4BSD-Lite

Для урегулирования спора CSRG Беркли провела масштабную работу по аудиту исходного кода 4.4BSD. Из системы были удалены все файлы, содержащие код, лицензированный у AT&T, а также любые элементы, которые могли быть признаны производными от него. В результате была сформирована версия 4.4BSD-Lite (также известная как 4.4BSD-Lite Release 1 или 4.4BSD-Lite R1), выпущенная в июне 1994 года. Она распространялась по лицензии BSD, которая позволяла использовать, модифицировать и распространять код без ограничений, при условии сохранения уведомления об авторских правах.

После завершения судебного процесса в январе 1994 года (решение было вынесено в пользу Университета Беркли и BSDi) стало ясно, что 4.4BSD-Lite является единственной легально чистой версией BSD для свободного распространения. Вскоре после этого, в 1995 году, вышла 4.4BSD-Lite Release 2, которая включала дополнительные исправления и улучшения, но не содержала принципиальных архитектурных изменений.

Завершение работы CSRG

Выпуск 4.4BSD-Lite стал последним крупным проектом Computer Systems Research Group. После завершения судебного процесса и выпуска финальных версий, CSRG была расформирована в 1995 году. Разработка BSD продолжилась силами сообщества и коммерческих компаний, взявших за основу именно 4.4BSD-Lite.

Архитектура и ключевые особенности

4.4BSD-Lite унаследовала архитектуру 4.4BSD, которая включала несколько значительных нововведений по сравнению с более ранними версиями Unix.

Монолитное ядро с модульной структурой

Ядро 4.4BSD-Lite является монолитным, но при этом поддерживает динамическую загрузку модулей (например, драйверов устройств через LKM — Loadable Kernel Modules). Основные подсистемы ядра:

  • Управление процессамипланировщик, основанный на приоритетах, поддержка многозадачности и сигналов.
  • Управление памятьювиртуальная память с подкачкой страниц (paging) и механизмом отображения (mmap).
  • Файловая система — поддержка UFS (Unix File System) с журналированием (в 4.4BSD-Lite R2) и расширенными атрибутами.
  • Сетевая подсистема — реализация стека протоколов TCP/IP, включая поддержку сокетов (Berkeley sockets), которые стали стандартом для Unix-подобных систем.

Виртуальная файловая система (VFS)

В 4.4BSD-Lite была реализована абстракция VFS (Virtual File System), позволяющая одновременно работать с несколькими типами файловых систем (UFS, NFS, MS-DOS FS, ISO 9660). Это обеспечило прозрачный доступ к данным на разных носителях и через сеть.

Сетевая подсистема

Сетевая подсистема 4.4BSD-Lite включала:

  • Полную реализацию стека TCP/IP (IPv4) с поддержкой маршрутизации, мультиплексирования и фильтрации пакетов.
  • Поддержку протоколов UDP, ICMP, ARP.
  • Реализацию сокетов для доменов AF_INET (IPv4) и AF_UNIX (локальные сокеты).
  • Встроенный брандмауэр (ipfw) и поддержку NAT (Network Address Translation).

Безопасность и управление доступом

Система использовала классическую модель Unix с пользователями, группами и правами доступа (чтение/запись/исполнение). Дополнительно были реализованы:

  • Механизм chroot для изоляции процессов.
  • Поддержка setuid/setgid для повышения привилегий.
  • Журналирование событий безопасности через syslog.

Состав дистрибутива

4.4BSD-Lite распространялась в виде исходных кодов и включала следующие компоненты:

  • Ядро — полный исходный код ядра для архитектур Intel x86 (i386), DEC Alpha, HP PA-RISC, SPARC и MIPS.
  • Базовые утилитыкомандный интерпретатор (sh, csh), файловые утилиты (cp, mv, rm, ls), текстовые редакторы (ed, vi), компиляторы (cc — на основе GCC), ассемблер, линковщик.
  • Сетевые службы — серверы и клиенты для FTP, Telnet, NFS, DNS (BIND), DHCP.
  • Системные библиотеки — libc (стандартная библиотека C), libm (математическая библиотека), libpthread (потоки).
  • Документация — man-страницы, технические отчёты (CSRG Technical Reports).

Влияние на современные операционные системы

4.4BSD-Lite стала фундаментом для большинства современных BSD-систем:

FreeBSD

FreeBSD была основана в 1993 году на коде 4.3BSD Net/2, но после судебного процесса перешла на 4.4BSD-Lite. Она активно развивается и используется в серверных решениях, встраиваемых системах и как основа для macOS (через Darwin).

NetBSD

NetBSD, основанная в 1993 году, также базируется на 4.4BSD-Lite. Её главная особенность — портируемость на множество аппаратных платформ (более 50 архитектур).

OpenBSD

OpenBSD была форкнута от NetBSD в 1995 году и также использует код 4.4BSD-Lite. Она уделяет особое внимание безопасности и аудиту кода.

Другие системы

  • BSD/OS (коммерческая система от BSDi) — была построена на 4.4BSD-Lite.
  • Darwin (ядро macOS) — содержит компоненты, унаследованные от 4.4BSD-Lite, включая сетевую подсистему и файловую систему UFS.

Лицензирование

4.4BSD-Lite распространяется по лицензии BSD (Berkeley Software Distribution License). Это разрешительная лицензия, которая позволяет:

  • Использовать код в коммерческих продуктах без уплаты роялти.
  • Модифицировать и распространять код как в исходном, так и в бинарном виде.
  • Требует только сохранения уведомления об авторских правах и отказа от ответственности.

Эта лицензия считается одной из самых свободных и способствовала широкому распространению кода 4.4BSD-Lite в различных проектах, включая встраиваемые системы и коммерческие ОС.

Критика и ограничения

Несмотря на историческую значимость, 4.4BSD-Lite имела ряд недостатков:

  • Отсутствие поддержки современных архитектур — система не поддерживала x86-64 (AMD64), ARM, RISC-V и другие современные процессоры.
  • Устаревшие драйверы — поддержка оборудования была ограничена устройствами начала 1990-х годов.
  • Ограниченная многозадачность — планировщик не поддерживал вытесняющую многозадачность в пользовательском пространстве (которая появилась позже в FreeBSD).
  • Отсутствие графической подсистемы — система поставлялась только с текстовым интерфейсом; поддержка X Window System требовала отдельной установки.

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

  • 4.4BSD-Lite стала последней версией BSD, выпущенной Калифорнийским университетом в Беркли. После этого разработка перешла к сообществу.
  • Исходный код 4.4BSD-Lite до сих пор доступен для изучения и скачивания на официальном архиве CSRG.
  • Многие алгоритмы и протоколы, реализованные в 4.4BSD-Lite (например, TCP/IP-стек), стали стандартами де-факто для Unix-подобных систем.

Источники

  • McKusick, M. K., Bostic, K., Karels, M. J., & Quarterman, J. S. (1996). The Design and Implementation of the 4.4BSD Operating System. Addison-Wesley.
  • McKusick, M. K. (1999). Twenty Years of Berkeley Unix: From AT&T-Owned to Freely Redistributable. Open Sources: Voices from the Open Source Revolution.
  • Salus, P. H. (1994). A Quarter Century of Unix. Addison-Wesley.
  • Официальный архив CSRG (Computer Systems Research Group) — 4.4BSD-Lite Release 1 и Release 2.

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

На главную BFOmetr →