---
title: "Проекты разработки FreeBSD"
sidenav: support
---

= Проекты разработки FreeBSD

[[development]]
Кроме основной группы разработчиков FreeBSD, имеется несколько групп энтузиастов, работающих над расширением области применения FreeBSD. Перейдите по ссылкам, перечисленным ниже, чтобы узнать подробности об этих замечательных проектах.

Если вы не нашли какой-либо известный вам проект, пожалуйста, пошлите его URL и краткое описание (от 3 до 10 строк), по адресу link:../mailto[www@FreeBSD.org]

Кроме того, некоторые из этих проектов регулярно публикуют информацию о положении дел, которые можно посмотреть на link:../news/status/[странице о текущем состоянии].

* <<documentation,Документация>>
* link:../advocacy/[В защиту FreeBSD]
* <<applications,Приложения>>
* <<networking,Сетевые возможности>>
* <<filesystem,Файловая система>>
* <<kernelandsecurity,Ядро и безопасность>>
* <<devicedrivers,Драйверы устройств>>
* <<architecture,Архитектура>>
* <<misc,Разное>>
* link:summerofcode[Идеи для конкурса Google Summer of Code 2005]

[[documentation]]
== Документация

* link:../docproj/[FreeBSD Documentation Project] The FreeBSD Documentation Project - это группа людей, которые пишут и поддерживают в актуальном состоянии документацию (такую, как Руководство и FAQ) для проекта FreeBSD. Если вы хотите помочь, подпишитесь на список рассылки freebsd-doc@FreeBSD.org и принимайте участие в его работе.
* link:newbies.html[FreeBSD Resources for Newbies] является списком ресурсов, которые могут помочь тем, кто является новичком в мире FreeBSD и UNIX(R). Есть также и список рассылки freebsd-newbies@FreeBSD.org.
* http://mirrorlist.FreeBSD.org/[Поиск RELEASE/SNAP на FTP-серверах FreeBSD]. Ресурс, который поможет найти FTP-сервер с конкретной версией релиза или снэпшота FreeBSD. База данных обновляется ежедневно в 3 часа ночи по Мельбурну (10 часов вперед от UTC).
* http://www.freebsddiary.org/[The FreeBSD Diary] является сборником кратких инструкций, предназначенных для новичков в UNIX. Целью проекта является предоставление набора пошаговых руководств по установке и настройке различных приложений.
* http://www.vmunix.com/fbsd-book/[A Comprehensive Guide to FreeBSD] - попытка создать более читаемый "книжный" вариант пособия, описывающий операционную систему FreeBSD. Предназначена для новичков как во FreeBSD, так и в UNIX. В настоящий момент находится в процессе доработки.
* http://flag.blackened.net/freebsd/[FreeBSD How-To's for the Lazy and Hopeless] это еще одна попытка от чистого сердца дать более читаемую информацию в стиле "how-to" по установке и конфигурации FreeBSD.
* http://home.worldonline.dk/nkbj/Linux+FreeBSD/Linux+FreeBSD.html[Linux+FreeBSD mini-HOWTO] описывает, как можно использовать Linux и FreeBSD на одной системе. В нем дается введение во FreeBSD и обсуждается, как эти две системы могут взаимодействовать, например, используя общее пространство раздела подкачки.
* http://www.treefort.org/~rpratt/freebsd/227/[Install Preview for FreeBSD 2.2.7] Руководство, иллюстрирующее процесс установки FreeBSD для тех, кто является новичком в unix и/или FreeBSD.
* http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/developers-handbook/index.html[FreeBSD Руководство для разработчиков]
* http://www.freebsd-corp-net-guide.com/[Руководство FreeBSD для сетевого администратора корпоративной сети] Этот сайт рассматривается как приложение к Руководству по использованию FreeBSD в корпоративных сетях, основной целью которого является повышение отдачи от этой книги. Когда как книги в жанре, например, беллетристики, можно читать и получать удовольствие в течение сотен лет после первого издания, технические руководства, к каким относится Руководство для сетевого администратора, устаревают в течение нескольких лет из-за изменений в продукте, который они описывают.

[[applications]]
== Приложения

* link:../java/[Java(R) во FreeBSD] Здесь находится информация о том, где взять самую последнюю версию JDK(R) для FreeBSD, как его установить и запустить, а также список программного обеспечения java, которое может вас заинтересовать. Заметьте, что JDK не поддерживается во FreeBSD версий до 2.2.
* link:../gnome/[GNOME во FreeBSD] Здесь находится информация о том, где найти последнюю версию GNOME для FreeBSD, как установить и запустить её, последние новости проекта и обновления, FAQ, освещающий вопросы GNOME, специфичные для FreeBSD, руководства по портированию приложений и другое.
* http://freebsd.kde.org[KDE в FreeBSD] Здесь находятся ссылки на последние релизы KDE для FreeBSD, вместе документацией и учебниками о том, как установить и запустить KDE в FreeBSD. Доступны также новости проекта и специфичные для FreeBSD FAQ.
* link:../ports/[Коллекция портов FreeBSD] Коллекция портов FreeBSD позволяет легко скомпилировать и установить большое количество приложений с минимальными затратами. Имеется список портов, доступных на данный момент, а также поисковый механизм для определения доступности конкретных приложений в имеющейся коллекции портов.
* http://people.FreeBSD.org/~fenner/portsurvey/[FreeBSD Ports distfiles survey] это список, отражающий доступность дистрибутивных файлов коллекции портов и дающий общее описание каждого порта.
* http://FreshPorts.org/[FreshPorts] предоставляет самый последний список портов и изменений в них. Добавьте ваши любимые порты в собственный список и получайте уведомления о любых изменениях.
* http://pointyhat.FreeBSD.org/[Pointyhat] - это сервер, проверяющий коллекцию портов и хранящий протоколы сборки пакетов и соответствующих ошибок для каждого порта.

[[networking]]
== Сетевые технологии

* Netperf: Оптимизация сетевого стека для ядер FreeBSD 5.x и 6.x, которая проводится вслед за работой по блокировкам SMPng в стеке сетевых протоколов FreeBSD 5.3. Целью проекта является изучение и реализация стратегий оптимизации для многопоточного стека сетевых протоколов.
* Dingo: _FreeBSD Network Cleanup and Consolidation Project_ представляет собой перечень работ, которые необходимо выполнить для наведения порядка и улучшения стека сетевых протоколов FreeBSD. Целью является удаление дублирующейся функциональности одновременно с добавлением новых возможностей, которые упростят использование FreeBSD как с точки зрения специалистов по сетям, так и экспериментаторов и новичков.
* http://www.csl.sony.co.jp/person/kjc/kjc/software.html[ALTQ]: управление пропускной способностью для приложений
* http://www.kame.net/[KAME Project], свободно распространяемый стек протоколов IPv6/IPsec для BSD
* http://www.awfulhak.org/ppp.html[Point to Point Protocol (PPP)]
* http://www.cs.pdx.edu/research/SMN/[Secure MobileIP via IP]
* [[SYSLOG-SECURE]]SYSLOG-SECURE: В августе 2001 был выпущен стандарт для syslog: RFC3164. В нём описаны некоторые расширения syslog, повышающие безопасность. В 2002 году мной начат проект по адаптации RFC3164 к версии syslog, используемой во FreeBSD, и по добавлению некоторых расширений, обеспечивающих безопасность. Как минимум syslog-sign. Будут изменены libc и syslogd. Также будут созданы утилиты для проверки/управления безопасностью. Приветствуется любая помощь. Отправляйте сообщения по электронной почте на адрес albert@ons-huis.net.

[[filesystem]]
== Файловые системы

* http://people.FreeBSD.org/~yar/hfs/[HFS и HFS Plus во FreeBSD.] Целью этого проекта является интеграция поддержки HFS из Darwin во FreeBSD.
* http://www.stacken.kth.se/projekt/arla/[Arla] это свободно распространяемая реализация клиентской части для AFS. Основной задачей является создание полнофункционального клиента со всеми возможностями обычного AFS. Другими планируемыми и реализованными возможностями являются все обычные инструменты управления и серверная часть.
* http://www.coda.cs.cmu.edu/[Coda] это распределенная файловая система. Кроме возможности работы в в ситуации отсутствия соединения, в ней реализована хорошая модель безопасности, репликация сервера и надёжное кэширование со стороны клиентской части.
* http://www.cs.columbia.edu/~ezk/research/software/[cryptfs] осуществляет шифрование имён файлов и страниц данных посредством алгоритма Blowfish.
* http://citeseer.nj.nec.com/santry99deciding.html[Elephant]: Файловая система, которая ничего не забывает
* http://www.ece.cmu.edu/~ganger/papers/[Журналирование против мягких обновлений: асинхронная защита мета-данных в файловых системах]
* http://people.FreeBSD.org/~terry/[Блокировка режима доступа]
* http://people.FreeBSD.org/~terry/[Гибкий интерфейс к namei]
* http://people.FreeBSD.org/~terry/[Блокировка для серверов и клиентов NFS]
* http://www.usenix.org/events/usenix99/full_papers/nightingale/nightingale_html/[Архитектура и реализация драйвера устройства DCD для Unix]
* http://iclub.nsu.ru/~semen/ntfs/[Драйвер NTFS для FreeBSD] Этот драйвер позволяет монтировать разделы Windows(R) NTFS во FreeBSD. В настоящий момент разделы NTFS могут быть доступны в режиме "только для чтения", хотя планируется реализовать и доступ в режиме "чтение/запись".
* http://www.eecs.umich.edu/Rio/[Rio (RAM I/O)]: Проект Rio исследует возможности реализации и использования надёжной памяти. Надежная память позволит значительно усилить надёжность и производительность системы.
* ftp://ftp.FreeBSD.org/pub/FreeBSD/FreeBSD-current/src/sys/ffs/ufs/README.softupdates[Soft Updates:] Решение проблемы обновления метаданных в файловой системе
* http://www.tcfs.it/[TCFS] это Transparent Cryptographic File System, которая является подходящим решением проблемы обеспечения конфиденциальности информации в распределенной файловой системе. С помощью более глубокой интеграции между службами шифрования и файловой системой, она является полностью прозрачной для приложений пользователя. Файлы хранятся в зашифрованном виде и расшифровываются до операции чтения. Процесс шифрования/восстановления происходит на клиентской машине и поэтому ключ шифрования никогда не передается по сети.
* http://now.cs.berkeley.edu/Td/[Tertiary Disk] это архитектура хранилищ данных для создания больших дисковых систем, позволяющая избежать несовершенства дисковых массивов. Имя проекта отражает ее цели: получить цену за мегабайт и емкость ленточных библиотек и производительность магнитных дисков. Мы используем широко распространенные, самые обычные компоненты для разработки масштабируемой дешевой дисковой системы терабайтной емкости. Наша цель - построение полной системы хранения стоимостью, лишь на 30-50% превышающей по цене обычный диск той же емкости. Для обеспечения доступа к большому количеству дисков, Tertiary Disk использует ПК, подключенные к коммутируемой сети. Наш прототип состоит из 20 персональных компьютеров с тактовой частотой 200 МГц, укомплектованных 370 дисками объёмом 8 Гбайт каждый. ПК объединены коммутатором Ethernet пропускной способностью 100 Мбит/с.
* http://www.vinumvm.org/[Vinum] это менеджер логических томов, созданный по подобию VERITAS volume manager(TM). Однако это не клон Veritas, а попытка решить некоторые проблемы более элегантно, чем это сделано в Veritas. В нем также имеется набор возможностей, отсутствующих в Veritas.
* http://www.tamacom.com/pathconvert/[The PathConvert project] - это утилиты для разработчиков, которые позволяют делать преобразование между абсолютными и относительными именами файлов. Это дает некоторые преимущества пользователям NFS и WWW.

[[kernelandsecurity]]
== Ядро и безопасность

* http://drawbridge.tamu.edu/[Drawbridge] это пакет для организации межсетевого экрана, разработанный в Texas A&M University и предназначенный для использования в больших академических учебных заведениях. Его самой привлекательной стороной является возможность выполнять фильтрацию пакетов на очень высокой скорости при наличии большого количества отдельных хостов в общей сети.
* http://www.cs.cmu.edu/~dpetrou/research.html[Lottery Scheduling Kernel]: В этом проекте для планировщика задач используется лотерейный алгоритм Уэлдспёджера (Waldspurger), в котором реализовано пропорциональное управление ресурсами. Основным преимуществом является то, что пользователи получают строгий контроль за относительной скоростью выполнения своих процессов и кроме того, они изолированы друг от друга так, что один пользователь не может полностью занять ресурсы CPU.
* http://www.OpenBSM.org/[OpenBSM] является открытой реализацией программного интерфейса и файлового формата аудита Basic Security Module (BSM) компании Sun. OpenBSM предоставляет пользовательские библиотеки, инструменты и документацию для реализации аудита в рамках TrustedBSD, который будет интегрирован во FreeBSD.
* http://people.FreeBSD.org/~terry/[Набор для тестирования утечки памяти ядра]
* http://people.FreeBSD.org/~abial/spy/[SPY] позволит отслеживать и/или выборочно блокировать определённые системные вызовы в вашей системе. Он может использоваться как монитор безопасности, дополнительное средство ограничения доступа или инструмент отладки.
* http://www.TrustedBSD.org/[TrustedBSD] даёт FreeBSD набор расширений, присущих защищённой операционной системе. Это включает в себя такие возможности, как тонко настраиваемые права доступа, списки управления доступом и жёсткое управление доступом. Эти возможности были интегрированы в базовый дистрибутив FreeBSD, а также портированы на другие основанные на BSD системы
* http://www.holm.cc/stress/[Пакет жёсткого тестирования ядра]. Предназначение этого стресс-теста является вызов аварийной остановки системы. Он состоит из небольших тестовых программ и скриптов. Каждый тест нацелен на определённую область ядра. Ключевой идеей этого пакета тестов является его хаотичность. Перед каждым запуском в случайных местах каждый тест выдерживает паузу случайной продолжительности.

[[devicedrivers]]
== Драйверы устройств

* Преобразование драйверов к использованию busdma и SMPng: busdma даёт переносимый уровень абстракции для работы с аппаратными примитивами прямого доступа к памяти (Direct Memory Access, DMA), которые используются многими драйверами высокопроизводительных устройств. Используя эту абстракцию, авторы драйверов устройств избегают необходимости добавления платформозависимого кода управления DMA, что увеличивает переносимость драйверов между аппаратными архитектурами. На этой странице также отслеживается движение драйверов к совместимости с SMPng.
* http://people.FreeBSD.org/~dfr/devices.html[Новый подход к работе устройств во FreeBSD]
* http://www.ccrc.wustl.edu/pub/chuck/tech/bsdatm/bsdatm.html[BSD ATM: реализация технологии ATM в 4.4BSD]: Новые приложения компьютеров в таких областях, как мультимедиа, работа с изображениями и распределенные вычисления требуют от компьютерной сети высокой производительности . Сетевые решения на основе технологии ATM представляют одну из возможных альтернатив, удовлетворяющих этим требованиям. Однако сложность ATM по сравнению с традиционными сетями, такими, как Ethernet, является барьером на пути его использования. В этой работе мы представляем архитектуру и реализацию BSD ATM, облегченный и эффективный программный уровень ATM для операционных систем семейства BSD. BSD ATM может быть использован как для сетевого трафика IP, так и ``родного'' трафика ATM.
* http://people.FreeBSD.org/~fsmp/HomeAuto/HomeAuto.html[Домашняя автоматика] с FreeBSD, включая контроллеры различных приборов, инфракрасные контроллеры, автоматизированные телефонные системы и тому подобное.
* http://people.FreeBSD.org/~gibbs/ARTICLE-0001.html[CAM: Новый уровень SCSI для FreeBSD] Подробное описание того, что такое новый уровень CAM SCSI и как он работает.
* http://www.jurai.net/~winter/tr/tr.html[The FreeBSD Token-Ring Project] Информация, файлы, патчи и документация по поддержке Token Ring во FreeBSD.
* [[xircomcem]]Для дальнейшей разработки драйвера сетевого адаптера Xircom CEM от Скотта Митчелла (Scott Mitchell) существует список рассылки. Чтобы присоединиться, пошлите письмо со строчкой `+subscribe freebsd-xircom+` на адрес majordomo@lovett.com.
* [[raid]] http://people.FreeBSD.org/~msmith/RAID/[Список] поддерживаемых RAID-адаптеров и сопутствующая информация о них от Майка Смита (Mike Smith).

[[architecture]]
== Архитектура

* link:../platforms/alpha[Перенос FreeBSD на системы Alpha] Содержит информацию о проекте FreeBSD Alpha, его статусе, о списках рассылки, используемом аппаратном обеспечении, а также о других проектах, связанных с Alpha.
* link:../platforms/ia64/[Перенос FreeBSD на системы IA-64] Этот проект предназначен для переноса FreeBSD на платформу IA-64. Все вопросы касательно этого проекта направляйте в список рассылки freebsd-ia64@FreeBSD.org.
* link:../platforms/ppc[Перенос FreeBSD на системы PowerPC(R).] Содержит информацию о проекте FreeBSD PPC, например, списках рассылки и тому подобное.
* link:../platforms/sparc[Перенос FreeBSD на системы SPARC(R)] Содержит информацию о проекте FreeBSD SPARC, включая FAQ, некий код начальной загрузки, информацию о процессорах и материнских платах SPARC, а также других проектах, связанных со SPARC.
* Страница http://slash.dotat.org/~newton/freebsd-svr4/[The SysVR4 Emulation] описывает эмулятор SysVR4 для FreeBSD. В настоящий момент он может запускать (или, в некоторых случаях, заводить вручную) большое количество выполнимых файлов SysV, взятых из поставки систем Solaris(TM)/x86 2.5.1 и 2.6. У меня есть причины верить в то, что он также будет запускать выполнимые файлы от SCO UnixWare и SCO OpenServer.
* http://www.cs.utah.edu/flux/oskit/[The OSKit] OSKit - это разработка и набор из 31 библиотеки компонент, ориентированных на операционные системы, а также подробнейшая документация. Используя модульные подход не только к большинству инфраструктур, используемых в ОС, но также и ко многим высокоуровневым компонентам, целью OSKit является снижение барьера для начала OS R&D и уменьшение его стоимости. OSKit значительно упрощает создание новой ОС, перенос существующей ОС на архитектуру x86 (или в будущем на другие архитектуры, поддерживаемые в OSKit) или усиление поддержки ОС более широкого набора устройств, форматов файловых систем, выполнимых файлов или сетевых служб. OSKit также хорошо подходит для построения программ, связанных с работой ОС, таких, как загрузчики или серверы уровня ОС поверх микроядра.
* http://people.FreeBSD.org/~picobsd/[Small and embedded FreeBSD (PicoBSD)] PicoBSD это версия FreeBSD, которая помещается на одну дискету и позволяет в разных конфигурациях строить безопасный доступ по коммутируемым каналам, простой бездисковый маршрутизатор или даже сервер доступа. И всё это находится на одной дискете размером 1.44 Мбайт. PicoBSD работает минимум на 386SX с 8 Мбайтами оперативной памяти и не требует наличия винчестера!

[[misc]]
== Разное

* http://www.freesbie.org/[FreeSBIE] представляет собой основанный на FreeBSD компакт-диск с "живой" операционной системой. На компакт-диске находится широкий набор полезных приложений, которые могут работать как непосредственно с CD, либо сам CD может использоваться в качестве дистрибутивного для установки FreeBSD на ваш жёсткий диск.
* http://www.gnu.org/software/global/global.html[GLOBAL] Глобальная система присвоения тегов исходным текстам, которая работает одинаковым образом в различном окружении. В настоящий момент, она поддерживает командную строку shell, редактор nvi, браузер web, редактор emacs и редактор elvis, поддерживает языки C, Yacc и Java.
* http://snapshots.jp.FreeBSD.org/tour/[Тур по исходным текстам FreeBSD]. Гипертекстовое представление исходного текста ядра FreeBSD. Проиндексированы версии -CURRENT и RELENG_4.
* http://www.de.daemonnews.org/199908/enteruser.html[Enteruser: Замена утилиты Adduser]
* http://www.FreeBSD.org/projects/acpi/[ACPI on FreeBSD]. Проект, призванный обеспечить гладкую работу ACPI во FreeBSD.
* http://www.daemonology.net/freebsd-update/[Binary Updater]. FreeBSD Update представляет собой систему для автоматического построения, распространения, сгрузки и установки двоичных обновлений FreeBSD, касающихся безопасности. Это позволяет легко отслеживать ветки FreeBSD без необходимости сгрузки дерева исходных кодов и перекомпиляции (конечно, за исключением машины, строящей обновления). Обновления подписываются криптографическим ключом; они также распространяются в виде двоичных diff-файлов для утилиты diff, что значительно снижает требования к используемой пропускной способности.
* link:&enbase;/projects/updater.html[Binary Updater (binup)]. Проект The FreeBSD Binary Updater Project должен создать безопасный механизм для распространения двоичных обновлений к FreeBSD. Эта система является клиент/серверным механизмом, который позволяет клиентам устанавливать любые известные "профили" или релизы FreeBSD по сети. В этом случае специфичный профиль может содержать некоторый набор программного обеспечения FreeBSD для установки, дополнительные пакеты и действия по настройке, которые идеально подходят для некоторого применения (например, профиль для FreeBSD 4.3 Secure Web server).
* link:https://www.FreeBSD.org/projects/c99/[The FreeBSD C99 & POSIX(R) Conformance Project] предназначен для реализации всех требований стандартов ISO 9899:1999 (C99) и IEEE 1003.1-2001 (POSIX).
* link:cvsweb.html[CVSweb] это Web-интерфейс к хранилищу CVS, при помощи которого можно использовать браузер для просмотра иерархии файлов и истории изменений каждого файла в очень удобном виде.
* http://gerda.univie.ac.at/freebsd-laptops/[FreeBSD Laptops Compatibility List] это полная база данных лэптопов и карт PCMCIA, совместимых с FreeBSD. Этот сайт содержит детальную информацию об известных аппаратных и программных вопросах.
* http://freebsd-current.sentex.ca/tinderbox/[FreeBSD Tinderbox] постоянно собирает активные ветви дерева исходных текстов FreeBSD для обнаружения проблем сборки. Когда сборка на tinderbox завершается неудачно, он отправляет письмо в соответствующий список рассылки, чтобы сборка могла быть восстановлена в кратчайший срок. Исходный текст Tinderbox поддерживается в CVS-хранилище FreeBSD в каталоге http://cvsweb.FreeBSD.org/src/tools/tools/tinderbox/[src/tools/tools/tinderbox].
* На страницах проекта link:https://www.FreeBSD.org/projects/gnats4/[FreeBSD GNATS Upgrade] описываются задачи, график выполнения работ и подробности о деталях реализации, связанные с обновлением системы отслеживания ошибок FreeBSD с версии GNATS 3 до GNATS 4.
