В следующей части рассказывается о том, что из себя представляет проект, включая краткую историю, цели проекта и модель разработки проекта.
Рассказывает Jordan K. Hubbard <jkh@FreeBSD.org>.
Проект 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 удалил большие куски кода необходимого для создания реально загружающейся системы (по причине различных лицензионных требований) и фактически порт 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 и 5.0-CURRENT. Последний релиз из этой ветки на данный момент - это 4.6.2-RELEASE.
Текущая -stable ветка это 4.x-stable. 4.0-RELEASE был выпущен в Марте 2000 года, 4.1 в Июле 2000 и 4.2 в Ноябре 2000. Также планируется еще ряд выпусков из ветки 4.x-stable (RELENG_4) в 2001 году.
Долговременные разработки и проекты продолжаются в ветке 5.0-CURRENT, и по ходу разработки будут доступны снэпшот-релизы 5.0 на CDROM (и, конечно же, в сети) постоянно доступные с сервера снепшотов как промежуточные результаты.
Предоставлено Jordan K. Hubbard <jkh@FreeBSD.org>.
Целью Проекта FreeBSD является предоставление программного обеспечения, которое может быть использовано для любых целей и без дополнительных ограничений. Многие из нас вносят внушительные взносы в код (и проект) и совершенно не требуют за это небольшой финансовой компенсации сейчас и в последствии, и мы определенно не собираемся настаивать на этом. Мы верим, что первая и основная наша "задача" предоставить код для всех кому он необходим, и для любых целей, поэтому этот код становится все более и более распространен и предоставляет самые широкие выгоды. Это, я верю, является одной из основных целей Свободного Програмного Обеспечения и той которую мы с энтузиазмом поддерживаем.
Тот код в нашем дереве исходных текстов, который подпадает под Общую Публичную Лицензию GNU (GPL) или Общую Публичную Лицензию Библиотек GNU (LGPL) предоставляется с дополнительными ограничениями, хотя и это только со стороны предоставления доступа, а не просто противоположность. По причине дополнительных сложностей, которые могут появится при коммерческом использовании GPL продуктов, мы предпочитаем ПО предоставленное под более свободной лицензией BSD, когда это возможно.
Предоставлено Satoshi Asami <asami@FreeBSD.org>.
Разработка FreeBSD это очень открытый и гибкий процесс, FreeBSD литературно выражаясь создан из кода предоставленного сотнями людей со всего мира, в чем Вы можете убедится взглянув на список этих людей. Мы постоянно ищем новых разработчиков и новые идеи, и те кто заинтересованы в более тесном взаимодействии и хочет принять участие в проекте должны просто связаться с нами в Список рассылки FreeBSD, посвящённый техническим дискуссиям <freebsd-hackers@FreeBSD.org>. Для тех кто желает использовать FreeBSD в различных областях для работы и не только доступен Список рассылки анонсов FreeBSD <freebsd-announce@FreeBSD.org>.
Полезными вещами, о которых стоит знать, если Вы интересуетесь FreeBSD и процессом разработки, независимо или тесно сотрудничая с нами, являются:
Главное дерево исходных текстов FreeBSD поддерживается с помощью CVS (Concurrent Version System), свободно доступной системой контроля исходных текстов, который поставляется встроенным в FreeBSD. Основной CVS репозиторий располагается на компьютере находящемся в городе Конкорд, Калифорния (США) откуда и распространяется на множество зеркал по всему миру. Дерево CVS, а также деревья -CURRENT и -STABLE, которые извлекаются из него, могут быть легко скопированы на Ваш локальный компьютер. Обратитесь к секции Синхронизация Вашего дерева исходных текстов для информации об этом процессе.
Коммиттеры это люди, которые имеют доступ на запись к главному дереву CVS, и имеют право вносить изменения в главное дерево исходных текстов FreeBSD (термин "коммиттер" появился от названия одной из команд cvs(1) commit, которая используется для внесения изменений в CVS репозиторий). Лучший способ для предоставления Ваших изменений на рассмотрение коммиттеров - это использование команды send-pr(1), или если что-то произошло, то Вы можете достучаться до них посылкой письма по адресу <cvs-committers@FreeBSD.org>.
CORE группа FreeBSD могла бы быть эквивалентом Совета Директоров, если бы Проект FreeBSD был бы компанией. Главная задача CORE группы создавать уверенность, что проект в целом в хорошем состоянии и движется в правильном направлении. Приглашение постоянных или ответственных разработчиков присоединится к группе коммиттеров одна из функций CORE группы, также как приглашение новых членов в CORE группу по мере того, как другие уходят. Нынешний состав группы был выбран из рядов комиттеров путем общего голосования в Октябре 2000 года. Выборы проходят каждые 2 года.
Некоторые члены CORE группы имеют особенные области ответственности, что означает, что они являются ответственными за то, чтобы большая часть системы работала как необходимо.
Note: Большинство членов CORE группы являются волонтерами и не получают никакой финансовой выгоды от участи в проекте, поэтому Вы не должны рассматривать их работу как "гарантированную поддержку". Аналогия с "не очень аккуратна" и вероятно гораздо корректнее сказать, что это люди которые отдали свои жизни в пользу FreeBSD вместо их лучшей жизни! ;-)
Последней, но однозначно не единственной, наибольшей группой разработчиков являются пользователи, которые предоставляют комментарии и исправления ошибок нам на почти постоянной основе. Основной путь участвовать в не централизованной разработке это подписаться на Список рассылки FreeBSD, посвящённый техническим дискуссиям <freebsd-hackers@FreeBSD.org> (смотри информацию о списках рассылки), где обсуждаются подобные вещи.
Список тех, кто предоставил что-либо попавшее в наше дерево исходных текстов, очень длинный и постоянно растет, поэтому почему бы Вам не присоединится к нему предоставив что-нибудь FreeBSD сегодня ?:-)
Предоставление кода не единственный способ помочь проекту; для более-менее полного списка вещей, которые необходимо сделать пожалуйста обратитесь к секции как помочь этого руководства.
В завершении, наша модель разработки организована как неточный набор концентрированных колец. Централизованная модель разработана для удобства пользователей FreeBSD, которые таким образом получают простую систему контроля за одной центральной базой кода, и позволяет не оставить за бортом проекта потенциальных помошников! Мы желаем предоставить стабильную операционную систему с большим количеством когерентных прикладных программ, которые пользователи смогут легко установить и использовать, и эта модель работает очень хорошо для выполнения всего этого.
Мы все приглашаем тех кто хотел бы присоединится к нам, как разработчик FreeBSD выделить немного времени и привнести свой взнос в постоянный успех FreeBSD!
FreeBSD - это свободно доступная, базирующаяся на 4.4BSD-Lite релизе для компьютерных систем основанных на Intel i386, i486, Pentium, Pentium Pro, Celeron, Pentium II, Pentium III (или совместимых) и DEC Alpha. В основном она базируется на программном обеспечении от группы CSRG, U.C. Berkley, с некоторым дополнениями из NetBSD, OpenBSD, 386BSD и Free Software Foundation.
Со времен FreeBSD версии 2.0 в конце 94, производительность, возможности, и стабильность FreeBSD выросла многократно. Самое большое изменение это полное обновление системы виртуальной памяти с обьедененным VM/файловым буферизированым кэшем, который не только увеличивает производительность, но и уменьшает количество используемой памяти, делая 5MB конфигурацию более доступным минимумом. Другие улучшения включают в себя полную поддержку NIS (клиент и сервер), поддержка транзакций TCP, поддержка "звонка-по-запросу" в PPP, встроенная поддержка DHCP, улучшеная субсистема SCSI, поддержка ISDN, ATM, FDDI, Fast и Gigabit Ethernet (1000Mbit) адаптеров, улучшеная поддержка последних версий контролеров Adaptec и сотни исправленных ошибок.
Мы также приняли комментарии и предложения множества наших пользователей близко к сердцу и попытались предоставить, то что мы считаем более нормальным и простым для понимания инсталляционным процессом. Ваши отзывы об этом (постоянно развивающемся) процессе особенно приветствуются!
В дополнение к базовой системе, FreeBSD предоставляет коллекцию портированого ПО включающую в себя тысячи популярных программ. На середину ноября 2000 года она включала в себя почти 4000 портов! В коллекцию входят множество програм от http (WWW) серверов, до игр, языков программирования, текстовых редакторов и все что между ними. Полная коллекция портов требует приблизительно 100Мб дискового пространства, потому что порт представляет собой "дельты" от оригинальных исходных текстов. Это сильно упрощает нам процесс обновления портов, и очень сильно уменьшает количество занимаемого дискового места по сравнению со старой 1.0 коллекцией портов. Для того чтоб скомпилировать и проинсталлировать программу которую Вы хотите, Вам необходимо всего лишь войти в директорию порта программы, набрать make install и дать системе сделать все остальное. Исходные тексты для каждого порта, который Вы инсталлируете отыскиваются динамически с CDROM'a или локального FTP сервера, поэтому Вам нужно только дисковое пространство для сборки тех портов каких Вы хотите. Почти каждый порт также предоставляется как пред-компилированый "пакадж", который может быть проинсталирован с помощью простой команды (pkg_add) теми кто не хочет компилировать порты из исходных текстов.
Множество дополнительных документов которые Вы можете найти очень полезными в процессе инсталляции и использования FreeBSD могут быть найдены в директории /usr/share/doc на любой машине работающей под управлением FreeBSD 2.1 и выше. Вы можете в просматривать локально установленные документы с помощью любого браузера понимающего HTML используя следующие URLи:
Вы также можете посмотреть главные (и наиболее часто обновляемые) копии на http://www.FreeBSD.org/.