Руководство FreeBSD
Пред. | Глава 1. Введение | След.

# 1.3. О Проекте FreeBSD

В следующей части рассказывается о том, что из себя представляет проект, включая краткую историю, цели проекта и модель разработки проекта.

## 1.3.1. Краткая история FreeBSD

Предоставил Jordan Hubbard.

Проект FreeBSD возник в первой половине 1993 года, частично как результат развития ''Неофициального комплекта исправлений к 386BSD (patchkit)'', последними 3-мя координаторами этого проекта: Nate Williams, Rod Grimes и мною.

Нашей главной задачей было привести промежуточный снэпшот 386BSD в порядок, исправив множество проблем, которые механизм patchkit не мог решить. Некоторое из вас возможно помнят раннее название этого проекта: ''386BSD 0.5'' или ''386BSD Interim''.

386BSD была операционной системой Била Джоилца, который на тот момент находился строго говоря, в состоянии полного пренебрежения к ней. Так как patchkit разрастался, его поддержание становилось более неудобным день от дня, мы пришли к единодушному соглашению что что-то нужно делать и решили помочь Биллу путем предоставления промежуточных ''очистных'' снэпшотов. Эти планы были грубо оборваны, когда Билл внезапно решил прекратить поддержку проекта без всяких ясных комментариев, что должно быть сделано.

Нам потребовалось немного времени, чтобы прийти к решению продолжать следовать той же цели, даже без поддержки Билла, и мы приняли имя ''FreeBSD'' приобретенное Дэвидом Гринмэном. Наши начальные цели были определены после консультаций с пользователями существовавшей системы, и как только стало понятно, что проект на пути к тому, чтобы стать реальностью, я связался с Walnut Creek CDROM с идеями о путях последующего улучшения каналов распространения FreeBSD для множества пользователей без доступа к Internet. Walnut Creek CDROM не только поддержал идею распространения FreeBSD на CD, но также пошел далеко вперед и предоставил проекту компьютер для работы и быстрый доступ к Internet. Без почти беспрецедентной веры Walnut Creek CDROM в этот в то время полностью неизвестный проект, вряд ли FreeBSD зашел бы так далеко и так быстро, как сегодня.

Первым дистрибутивом, распространяемым как на CDROM, так и в сети, стал FreeBSD 1.0, выпущенный в декабре 1993 года. Эта версия была выполнена на основе ленты 4.3BSD-Lite (''Net/2'') из Калифорнийского Университета в Беркли, с многочисленными добавлениями из проекта 386BSD и Фонда Свободного Программного Обеспечения. Это был довольно внушительный успех для первого предложения, и мы закрепили его с выходом FreeBSD 1.1 RELEASE в мае 1994 года.

В это же время, на горизонте сгустились тучи в связи с назревающим скандалом между Novell и Калифорнийским Университетом, Беркли. Это был вялотекущий судебный процесс о легальности версии Net/2 из Беркли. Обстоятельства тяжбы с Калифорнийским Университетом заключались в том, что большие куски Net/2 были ''загромождены'' кодом, права на который принадлежат Novell, которая в свою очередь, получила их (права на код) ранее от AT&T. Чтоб вернуть ''благословение'' Novell, Беркли выпустил версию 4.4BSD-Lite, которая была объявлена полностью ''свободной'' и всем пользователям Net/2 было рекомендовано переключится на ее использование. Это также касалось FreeBSD, и проекту было дано время до конца Июля 1994 года для прекращения распространения его продукта базирующегося на Net/2. На этих условиях проекту было разрешено выпустить последний релиз до окончания срока, это был FreeBSD 1.1.5.1.

Тогда FreeBSD приступил к сложной задаче буквально полному изобретению себя из абсолютно новой и довольно неполной системы 4.4BSD-Lite. ''Lite'' был в прямом смысле light (легким) потому, что CSRG Berkeley удалил большие куски кода, необходимого для создания реально загружающейся системы (по причине различных лицензионных требований), и фактически порт 4.4BSD для платформы Intel был очень неполным. Проекту потребовалось время почти до ноября 1994 года для того, чтобы выполнить этот переход и на этом этапе FreeBSD 2.0 была опубликована в сети и на CDROM (в конце декабря). Несмотря на множество ''острых углов'' в этой версии, она пользовалась значительным успехом и была продолжена более устойчивой и простой в установке FreeBSD 2.0.5, выпущенной в июне 1995 года.

Мы выпустили FreeBSD 2.1.5 в августе 1996, и она стала достаточно популярной среди большого количества ISP и коммерческих производителей, чтобы выпустить еще один релиз из ветви 2.1-STABLE. Это была FreeBSD 2.1.7.1, вышедшая в феврале 1997 и завершившая главную ветвь разработки 2.1-STABLE. Сейчас в режиме поддержки, в эту ветвь (RELENG_2_1_0) вносятся только расширения безопасности и другие критически важные исправления.

FreeBSD 2.2 была ответвлена от основной линии разработки (''-CURRENT'') в ноябре 1996 как ветвь RELENG_2_2, а первая полная версия (2.2.1) появилась в апреле 1997. Последующие версии ветви 2.2 появлялись летом и в конце 97 года, а последняя версия (2.2.8) вышла в ноябре 1998. Первая официальная версия 3.0 была подготовлена к выходу в октябре 1998, завершив развитие ветви 2.2

Третье ветвление произошло 20 января 1999 года, появились ветви 4.0-CURRENT и 3.X-STABLE. Из ветви 3.X-STABLE были получены: 3.1 - 15 февраля 1999, 3.2 - 15 мая 1999, 3.3 - 16 сентября 1999, 3.4 - 20 декабря 1999, 3.5 - 24 июня 2000, за которым последовал через несколько дней немного обновленный 3.5.1, который содержал несколько исправлений в области безопасности Kerberos. Это был последний релиз из ветви 3.X.

Другое ветвление было выполнено 13 марта 2000 года, в результате чего появилась ветвь 4.X-STABLE. Из этой ветви было выпущено несколько релизов: 4.0-RELEASE был представлен в марте 2000 года, самый свежий 4.11-RELEASE был выпущен Jan 2005. Из ветви 4.X-stable (RELENG_4) будут выпущены и следующие релизы.

Долгожданный 5.0-RELEASE был анонсирован 19 января 2003 года. Он стал кульминацией приблизительно трех лет работы, с этого релиза начался курс FreeBSD на расширенную поддержку мультипроцессорности и потоков в приложениях, была также представлена поддержка платформ UltraSPARC® и ia64. За этим релизом последовал релиз 5.1 в июне 2003 года. Последним релизом 5.X из ветви -CURRENT стал 5.2.1-RELEASE, представленный в феврале 2004.

Ветвь RELENG_5 была создана в августе 2004, после чего был выпущен релиз 5.3-RELEASE, который открыл серию релизов из ветви 5-STABLE.

На данный момент, долговременные разработки и проекты продолжаются в ветке 6.X-CURRENT, и по ходу разработки будут доступны снэпшот-релизы 6.X на CDROM (и, конечно же, в сети), постоянно выкладываемые на сервер снэпшотов как промежуточные результаты.

## 1.3.2. Цели Проекта FreeBSD

Предоставил Jordan Hubbard.

Целью Проекта FreeBSD является предоставление программного обеспечения, которое может быть использовано для любых целей и без дополнительных ограничений. Многие из нас вносят значительный вклад в код (и проект) и совершенно не требуют за это какой-либо финансовой компенсации сейчас и в последствии, хотя мы определенно не собираемся отказываться от нее. Мы верим, что первая и основная наша ''миссия'' это предоставление кода для всех, кому он необходим, и для любых целей, поэтому этот код становится все более и более распространен и предоставляет самые широкие возможности. Это, я верю, является одной из основных целей Свободного Программного Обеспечения и мы с энтузиазмом поддерживаем ее.

Тот код в нашем дереве исходных текстов, который попадает под Общую Публичную Лицензию GNU (GPL) или Общую Публичную Лицензию Библиотек GNU (LGPL), предоставляется с дополнительными условиями, хотя они обеспечивают только возможность доступа а не его ограничение. По причине дополнительных сложностей, которые могут появится при коммерческом использовании GPL продуктов, мы предпочитаем ПО, предоставленное под более свободной лицензией BSD, когда это возможно.

## 1.3.3. Модель Разработки FreeBSD

Предоставил Satoshi Asami.

Разработка FreeBSD это очень открытый и гибкий процесс -- FreeBSD, буквально выражаясь, создан из кода, предоставленного сотнями людей со всего мира, в чем вы можете убедится взглянув на список этих людей. Мы постоянно ищем новых разработчиков и новые идеи, и тот, кто заинтересован в более тесном взаимодействии и хочет принять участие в проекте, должен просто связаться с нами в рассылке freebsd-hackers. Для тех кто желает использовать FreeBSD в различных областях для работы, доступен Список рассылки анонсов FreeBSD.

Для участия в процессе разработки FreeBSD независимо или тесно сотрудничая с нами, полезно знать следующее:

CVS Репозиторий

  Главное дерево исходных текстов FreeBSD поддерживается с помощью CVS (Concurrent Versions System), свободно доступной системой контроля исходных текстов, которая поставляется вместе с FreeBSD. Основной CVS репозиторий располагается на компьютере, находящемся в городе Санта Клара, Калифорния (США), откуда и распространяется на множество зеркал по всему миру. Дерево CVS, содержащее ветви -CURRENT и -STABLE, может быть легко скопировано на ваш локальный компьютер. Обратитесь к разделу Синхронизация дерева исходных текстов за информацией об этом процессе.

Список коммиттеров

  Коммиттеры это люди, которые имеют доступ на запись к главному дереву CVS, и имеют право вносить изменения в главное дерево исходных текстов FreeBSD (термин ''коммиттер'' появился от названия команды cvs(1) `commit`, которая используется для внесения изменений в CVS репозиторий). Лучший способ для предоставления ваших изменений на рассмотрение коммиттеров - это использование команды send-pr(1). Если что-то произошло с системой, вы можете достучаться до них посылкой письма по адресу cvs-committers.

CORE группа FreeBSD

  CORE группа FreeBSD могла бы быть эквивалентом Совета Директоров, если бы Проект FreeBSD был компанией. Главная задача CORE группы -- убедиться, что проект в целом в хорошем состоянии и движется в правильном направлении. Приглашение постоянных и ответственных разработчиков присоединится к группе коммиттеров одна из функций CORE группы, также как приглашение новых членов в CORE группу по мере того, как другие уходят. Нынешний состав группы был выбран из рядов коммиттеров путем общего голосования в июле 2004 года. Выборы проходят каждые 2 года.

  Некоторые члены CORE группы имеют особые области ответственности, это означает, что они являются ответственными за работу отдельной большой части системы. За полным списком разработчиков FreeBSD и областей их ответственности обращайтесь к Списку участников.

  > Замечание: Большинство членов CORE группы являются волонтерами и не получают никакой финансовой выгоды от участии в проекте, поэтому вы не должны рассматривать их работу как ''гарантированную поддержку''. Аналогия с ''советом директоров'' не очень точна и вероятно гораздо правильнее будет сказать, что это люди, которые посвятили себя FreeBSD, пожертвовав личной жизнью!

Внешняя помощь

  Последней, но однозначно не менее значимой, наибольшей группой разработчиков являются пользователи, которые предоставляют комментарии и исправления ошибок нам на почти постоянной основе. Основной путь участвовать в не централизованной разработке это подписка на Список рассылки FreeBSD, посвящённый техническим дискуссиям, где обсуждаются подобные вещи. Обратитесь к Прил. C за дальнейшей информацией о различных списках рассылки FreeBSD.

  Список контрибьюторов FreeBSD очень длинный и постоянно растет, поэтому почему бы вам не присоединится к нему предоставив что-нибудь FreeBSD сегодня?

  Предоставление кода не единственный способ помочь проекту; для более-менее полного списка вещей, которые необходимо сделать пожалуйста обратитесь к веб сайту проекта FreeBSD.

Вообще говоря, наша модель разработки организована как ''нечеткий набор концентрированных колец''. Централизованная модель разработана для удобства пользователей FreeBSD, которые получают простую систему контроля за одной центральной базой кода, и позволяет не оставить за бортом проекта потенциальных помощников! Мы желаем предоставить стабильную операционную систему с большим количеством когерентных прикладных программ, которые пользователи смогут легко установить и использовать -- наша модель работает очень хорошо для этой задачи.

Мы все приглашаем тех, кто хотел бы присоединится к нам как разработчик FreeBSD, выделить немного времени и привнести свой взнос в постоянный успех FreeBSD!

## 1.3.4. Текущая Версия FreeBSD

FreeBSD - это свободно доступный, основанный на 4.4BSD-Lite релиз с полными исходными текстами для компьютерных систем, основанных на Intel i386™, i486™, Pentium®, Pentium Pro, Celeron®, Pentium II, Pentium III, Pentium 4 (или совместимыми), Xeon™, DEC Alpha™ и Sun UltraSPARC. В основном он основан на программном обеспечении от группы CSRG, U.C. Berkley, с некоторым дополнениями из NetBSD, OpenBSD, 386BSD и Free Software Foundation.

Со времен FreeBSD версии 2.0 в конце 94, производительность, возможности, и стабильность FreeBSD выросла многократно. Самое большое изменение это полное обновление системы виртуальной памяти с объединенным VM/файловым буферизованным кэшем, который не только увеличивает производительность, но и уменьшает количество используемой памяти, делая 5 MB конфигурацию более доступным минимумом. Другие улучшения включают в себя полную поддержку NIS (клиент и сервер), поддержка транзакций TCP, поддержка "звонка-по-запросу" в PPP, встроенная поддержка DHCP, улучшенная подсистема SCSI, поддержка ISDN, ATM, FDDI, Fast и Gigabit Ethernet (1000 Mbit) адаптеров, улучшенная поддержка последних версий контролеров Adaptec и многие тысячи исправленных ошибок.

В дополнение к базовой системе, FreeBSD предоставляет коллекцию портированого ПО, включающую в себя тысячи популярных программ. На время подготовки этого документа она включала в себя более 12,300 портов! В коллекцию входят множество программ от http (WWW) серверов, до игр, языков программирования, текстовых редакторов и всего прочего. Полная коллекция портов требует приблизительно 400 MB дискового пространства, потому что порт представляет собой ''изменения'' оригинальных исходных текстов. Это сильно упрощает нам процесс обновления портов, и очень сильно уменьшает количество занимаемого дискового места по сравнению со старой (1.0) коллекцией портов. Для того, чтобы скомпилировать и установить программу, необходимо всего лишь войти в каталог порта программы, набрать `make install` и дать системе сделать все остальное. Исходные тексты для каждого порта, который вы устанавливаете, загружаются автоматически с CDROM или локального FTP сервера, поэтому вам нужно только дисковое пространство для сборки тех портов, которые необходимы. Почти каждый порт также предоставляется как пред-компилированный ''пакет'', который может быть установлен с помощью простой команды (`pkg_add`) теми, кто предпочитает не компилировать порты из исходных текстов. Дополнительная информация о пакетах и портах находится в Гл. 4.

Множество дополнительных документов, которые вы можете найти очень полезными в процессе установки и использования FreeBSD, находятся в каталоге `/usr/share/doc` на любой машине, работающей под управлением современной версии FreeBSD. Вы можете просматривать локально установленные документы с помощью любого браузера, поддерживающего HTML, используя следующие ссылки:

Руководство FreeBSD

  `/usr/share/doc/ru_RU.KOI8-R/books/handbook/index.html`

FreeBSD FAQ (Часто задаваемые вопросы)

  `/usr/share/doc/ru_RU.KOI8-R/books/faq/index.html`

Вы также можете просмотреть основные (и наиболее часто обновляемые) копии на http://www.FreeBSD.org/ru/.

Пред. | Начало | След.
Добро пожаловать во FreeBSD! | Уровень выше | Установка FreeBSD

Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите в рассылку <frdp@FreeBSD.org.ua>.
Информация по подписке на эту рассылку находится на сайте проекта перевода.