FreeBSD — свободная UNIX-подобная операционная система, потомок AT&T Unix по линии BSD, созданной в университете Беркли. FreeBSD работает на PC-совместимых системах семейства Intel x86 (IA-32) (включая Microsoft Xbox), а также на DEC Alpha, Sun UltraSPARC, IA-64, AMD64, PowerPC и NEC PC-98. Готовится поддержка архитектур ARM и MIPS.
FreeBSD разрабатывается как целостная операционная система. Исходный код ядра, драйверов устройств и базовых пользовательских программ (т. н. userland), таких как командные оболочки и т. п., содержится в одном дереве системы управления версиями (CVS). Это отличает FreeBSD от GNU/Linux — ещё одной свободной реализации UNIX-подобной системы - в которой ядро разрабатывается одной группой разработчиков, а набор пользовательских программ — другими (например, проект GNU), а многочисленные группы собирают это все в единое целое и выпускают в виде различных дистрибутивов Linux.
FreeBSD хорошо зарекомендовала себя как система для построения интернет- и интранет-серверов. Она предоставляет достаточно надёжные сетевые службы и эффективное управление памятью. FreeBSD широко представлена в списке веб-серверов с наибольшим временем непрерывной работы (согласно исследованию компании Netcraft).
Разработка FreeBSD началась в 1993 году, в качестве отправной точки были взяты исходные тексты 386BSD. Однако, из соображений законности использования исходных кодов 386BSD, команда разработчиков FreeBSD переработала большую часть системы ко времени выпуска FreeBSD 2.0 в январе 1995 г., используя 4.4BSD-Lite. Руководство FreeBSD содержит более подробную историческую информацию о происхождении FreeBSD.
Существует две одновременно разрабатываемые ветви FreeBSD — CURRENT и STABLE.
CURRENT (нестабильная, тестовая) предназначена для тестирования нового, экспериментального кода. Новые функции, добавленные в CURRENT, могут остаться в системе или от них могут отказаться, если реализация окажется неудачной. Иногда эта версия может оказаться в непригодном для использования состоянии.
STABLE (стабильная или производственная) версия содержит только те нововведения, которые прошли проверку в CURRENT. Тем не менее, эта версия тоже предназначена, в основном, для разработчиков. Не рекомендуется обновлять ответственные рабочие серверы до STABLE, предварительно её не протестировав. На основе STABLE регулярно создаются тщательно протестированные разработчиками RELEASE версии.
По состоянию на 15 января 2007 года текущий релиз FreeBSD имеет номер 6.2 [2].
После выпуска релизов, создаются дополнительные ветви разработки для их поддержки, но в них вносятся лишь самые необходимые изменения, исправляющие серьёзные ошибки или проблемы с безопасностью системы. До четвёртой версии FreeBSD у стабильной и текущей веток был один и тот же старший номер версии. Затем текущей ветви был присвоен номер 5, а у стабильной остался номер 4. В настоящее время стабильная версия имеет номер 6, а текущая — 7. Существуют, также, ветви 5-STABLE и 4-STABLE для поддержки тех пользователей, которые ещё не обновили FreeBSD до версии 6.
FreeBSD 5 включает несколько новых функций, в том числе относящихся к безопасности. С целью повысить безопасность FreeBSD был сформирован проект TrustedBSD, в рамках которого были разработаны, в том числе: расширяемая система принудительного контроля доступа MAC, списки доступа ACL для файловых систем и новая файловая система UFS2. Некоторые функции TrustedBSD были интегрированы также в операционные системы NetBSD и OpenBSD. FreeBSD 5 также поддерживает шифрование файловых систем посредством системы GDBE, которую написал Пол-Хеннинг Камп (Paul-Henning Kamp), один из ведущих разработчиков. Другие важные возможности FreeBSD 5 относятся к внутриядерным блокировкам для улучшения производительности на многопроцессорных SMP-системах и многопоточности, реализованной системой KSE, которая является поточной библиотекой по умолчанию начиная с версии 5.3.
Система портов FreeBSD обеспечивает механизм установки сторонних программ, распространяемых как в исходных кодах (обычный способ в мире UNIX) так и в бинарных файлах (для проектов с закрытым исходным кодом). Порт включает в себя файлы, необходимые для правильных компиляции, установки и работы приложения под FreeBSD. В настоящее время коллекция портов насчитывает около 15000 приложений самого разного назначения. Самая свежая информация о портах находится на сайте freshports.org.
Большинство портов позволяют создавать пакеты (или «пакаджи» от англ. package — пакет, посылка), с помощью «цели» package для утилиты make. Пакет представляет собой архив, содержащий собранные исполняемые и другие необходимые файлы, а также данные и скрипты для быстрой автоматической установки или удаления данной программы. Вместе с программой ставятся все зависимости — другие пакеты, с программами или библиотеками необходимые данной программе.
Недостатком распространения программ в пакетах является ограничение на архитектуру, а также — отсутствие гибкости присущей портам — сложные порты могут конфигурироваться на тот или иной вариант сборки (называемый flavor — дословно, «аромат»), пакеты же, как правило, собираются для одного (простейшего) или нескольких популярных вариантов конфигурации.
Кроме этого, при сборке пакетов не используется некоторых оптимизаций, например по типу процессора. Так, для архитектуры i386, типичными параметрами сборки являются оптимизация второго уровня под процессор i486, в то время как сборка с оптимизацией под процессоры семейства 686 (Pentium Pro и выше), по некоторым оценкам может дать прирост производительности (в математических вычислениях) до 20 % и уменьшить размеры исполняемых файлов. Разумеется, такие тонкости критичны только для серверов с большой вычислительной загрузкой.
Указанные недостатки делают пакеты хорошим способом для быстрой установки простых программ, не имеющих особых требований.
Пакет привязан к конкретному диапазону версий системных и прикладных библиотек, поэтому иногда для работы пакета в более поздней версии операционной системы (особенно в случае отличия номера версии) может потребоваться установка пакета совместимости (misc/compat3x; misc/compat4x; misc/compat5x; и т. п.). Но необходимость прибегать к таким мерам возникает довольно редко — вскоре после выпуска новой версии системы, становится доступен и полный набор пакетов для архитектур i386(i32A) и amd64 собранный, для неё, по состоянию дерева портов, на момент выпуска.
О талисманах
Основным талисманом системы является красный демонёнок, известный также как Beastie. Кроме него, талисманом также считается Devilette, девушка в красном костюме демона.
FreeBSD 6.2 RELEASE Disk 1FreeBSD 6.2 RELEASE Disk 2FreeBSD 6.2 RELEASE Bootonly