diff --git a/ru/applications.sgml b/ru/applications.sgml index 838cd1553d..bc4fc8dba2 100644 --- a/ru/applications.sgml +++ b/ru/applications.sgml @@ -1,170 +1,169 @@ %includes; ]> &header;

Используйте возможности FreeBSD

FreeBSD может делать работу, которую обычно выполняют рабочие станции &unix;, впрочем, она также может делать и работу, о возможности выполнения которой вы можете и не подозревать:


FreeBSD является самой настоящей операционной системой, поставляемой со всеми исходными текстами.

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

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


С FreeBSD работают тысячи приложений.

Так как FreeBSD основывается на 4.4BSD, стандартной промышленной версии UNIX, компилировать и запускать программы достаточно легко. FreeBSD также включает большую коллекцию пакаджей и коллекцию портов, что обеспечивает лёгкость компиляции и установки уже откомпилированного программного обеспечения на вашей рабочей машине или сервере. Имеется также всё увеличивающееся количество коммерческих приложений, написанных для FreeBSD.

Вот некоторые области деятельности, в которых используется FreeBSD:


FreeBSD - это операционная система, вырастающая вместе с ростом ваших потребностей.

Хотя FreeBSD относится к классу свободно распространяемого программного обеспечения, она также является программным обеспечением, поддерживаемым её пользователями. Любой вопрос, который у вас имеется, может быть послан сотням разработчиков FreeBSD и её пользователям по электронной почте на адрес списка рассылки - freebsd-questions@FreeBSD.ORG.

+ href="mailto:freebsd-questions@FreeBSD.org"> + freebsd-questions@FreeBSD.org.

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

Вот что говорят специалисты . . .

``FreeBSD справляется с [нашей] большой нагрузкой достаточно хорошо и это не удивительно. Салют команде разработчиков FreeBSD.''

---Марк Хиттингер (Mark Hittinger), администратор WinNet Communications, Inc.

&footer; diff --git a/ru/docproj/current.sgml b/ru/docproj/current.sgml index 0314f84262..e63c2755e7 100644 --- a/ru/docproj/current.sgml +++ b/ru/docproj/current.sgml @@ -1,485 +1,485 @@ + - + %includes; %developers; - + "> "> "> "> "> ]> &header;

Здесь приведён список проектов, которые находятся в работе (или активно обсуждаются в списке рассылки freebsd-doc). Также сюда включены некоторые проекты, которые еще не обсуждались, но воплотить их было бы хорошей идеей. У каждого проекта есть человек для контактов (если он известен).

Если вы думаете, что сможете принять участие в любом из этих проектов, не стесняйтесь заявить об этом. Поговорите с человеком, отвечающим за конкретный проект, и он поможет вам стать его участником. Если у вас есть какие-либо идеи относительно новых проектов, пожалуйста, отправьте письмо по адресу FreeBSD-doc@FreeBSD.org.

Открытые сообщения об ошибках в документации

Текущие сообщения об ошибках в документации отслеживаются с помощью базы данных GNATS. Вы можете просмотреть открытые сообщения об ошибках в документации.

3-е печатное издание Руководства FreeBSD

Ответственный: Murray Stokely <murray@FreeBSD.org>

Описание: Началась работа по подготовке Руководства FreeBSD к публикации. Обратитесь к полному списку задач за информацией о том, чем вы можете помочь.

2-е печатное издание Руководства FreeBSD

Ответственный: Murray Stokely <murray@FreeBSD.org>

Описание: Этот проект завершен. Второе издание Руководства FreeBSD доступно на FreeBSD Mall. В окончательной редакции 653 страниц, номер ISBN 1571763031. Спасибо всем, кто помогал. Прочтите полный анонс здесь.

+ href="http://docs.FreeBSD.org/cgi/getmsg.cgi?fetch=0+0+archive/2001/freebsd-announce/20011028.freebsd-announce">здесь.

Список задач, использовавшийся в процессе разработки этого руководства, всё ещё находится здесь на память для потомков.

FreeBSD для пользователей Linux

Ответственный: FreeBSD-doc <FreeBSD-doc@FreeBSD.org>

Описание: Пользователи, переходящие от Linux к FreeBSD, могут столкнуться с некоторыми различиями между системами (различные командные процессоры, используемые по умолчанию, конфигурирование системы при загрузке и т.д.).

Написание разделов в Руководстве и/или FAQ

Ответственный: Никто

Описание: Части FAQ и Руководства имеют пустые разделы. Их требуется заполнить. Если вы использовали какие-либо из этих документов и нашли их неполными, пожалуйста, найдите время для описания вашего опыта в качестве возможной замены.

Кроме того, если вы сделали что-то, что не описано в FAQ или Руководстве, просто напишите новый раздел. Затем пошлите его так, как описано выше.

Написание некоторых новых документов

Новый уровень SCSI для FreeBSD (CAM)

Ответственный: <doc@FreeBSD.org>, <scsi@FreeBSD.org>

Описание: Посмотрите первый вариант Архитектура и реализация подсистемы SCSI во FreeBSD.

Написание некоторых глав для Руководства Разработчика

Ответственный: <doc@FreeBSD.org>

Описание:

Скрипты CGI

Ответственный: <doc@FreeBSD.org>, Wolfram Schneider <wosch@FreeBSD.org>

Описание: Изменение CGI скриптов url.cgi, ports.cgi, pds.cgi и скрипта portindex с использованием Perl модулей FreeBSD::Ports modules. Эти модули также нуждаются в тестировании.

Многонациональные скрипты Web

Ответственный: <doc@FreeBSD.org>

Описание:

Наши основные страницы веб-сервера написаны на (американском) английском. Проект FreeBSD Translations Projects занимается переводом страниц веб-сервера, Руководства и FAQ на другие языки.

Мы должны перевести скрипты cgi, а также и скрипты для построения веб-страниц. Скрипты должны поддерживать несколько языков, а не только один. Большинство скриптов написано на языке perl.

Переводы документации FreeBSD

Ответственный: <doc@FreeBSD.org>

Перевод документации FreeBSD (Web-страницы, FAQ, Руководство, страницы справочника) на другие языки. Обратитесь к проектам перевода FreeBSD

Улучшение средств поиска

Ответственный: Eric Anderson <anderson@centtech.com>

При поиске по веб-серверу выводимый текст включает имя файла, который были найден, например, FAQ34.html.

Будет более удобно, если в результат поиска будет включен и запрашиваемый текст, что позволит пользователю увидеть, насколько результат поиска соответствует запросу.

Документирование параметров настройки FreeBSD.

Ответственный: Tom Rhodes <trhodes@FreeBSD.org>

Многие параметры настройки FreeBSD не документированы. Каждый знает, насколько сложным может быть использование недокументированной системы, поэтому и был организован этот проект. Основная его цель это создание инструмента, способного генерировать страницу справочника с параметрами настройки. Следовательно, нам потребуется создать этот список из исходного кода.

Написание страниц справочника раздела 9

Ответственный: Tom Rhodes <trhodes@FreeBSD.org> и Hiten Pandya <hmp@FreeBSD.org>

Описание: Документирование интерфейсов и функций ядра.

Написание страниц справочника раздела 4

Описание: Написание страниц справочника раздела 4.

У всех драйверов в FreeBSD должны быть страницы справочника в разделе 4, но некоторых страниц нет.

Задача Описание Ответственный Последнее обновление Статус
Новые страницы справочника раздела 4
bs(4) драйвер WD33C93 SCSI   7 ноября 2003 &status.new;
cm(4) сетевые адаптеры SMC Arcnet &a.trhodes; 7 ноября 2003 &status.new;
ct(4) основанный на WD33C93 драйвер SCSI &a.non; 21 ноября 2003 &status.wip;
ctx(4) драйвер CORTEX-I Frame Grabber   7 ноября 2003 &status.new;
digi(4) драйвер DigiBoard intelligent serial card   7 декабря 2003 &status.new;
emu10k1(4) драйвер Soundblaster Pro &a.trhodes;, &a.hmp; 7 ноября 2003 &status.done;
hfa(4) драйвер HARP ATM   7 ноября 2003 &status.new;
idt(4) NICStar ATM Adapter &a.trhodes;, &a.bms; 9 ноября 2003 &status.done;
ips(4) контроллер IBM/Adaptec ServerRAID &a.trhodes; 11 ноября 2003 &status.done;
mss(4) AD1848-совместимый драйвер MSS/WSS   7 ноября 2003 &status.new;
ncv(4) драйвер NCR 53C500 SCSI (PC-98) &a.trhodes; 20 ноября 2003 &status.done;
nsp(4) драйвер Workbit Ninja SCSI (PC-98) &a.non; 24 ноября 2003 &status.done;
nss(4) поддержка звука NEC PC-98   7 ноября 2003 &status.new;
ofwcons(4) IEEE-1275 / Open Firmware   7 ноября 2003 &status.new;
rc(4) драйвер Riscom/8 аудио   7 ноября 2003 &status.new;
sab(4) драйвер SAB82523 Dual UART &a.bms; 6 декабря 2003 &status.done;
snc(4) драйвер сетевого адаптера Nat. Semi. DP8393X   7 ноября 2003 &status.new;
spigot(4) драйвер SPIGOT Video Capture   7 ноября 2003 &status.new;
uaudio(4) драйвер USB Audio &a.hmp; 10 ноября 2003 &status.done;
wdc(4)   &a.rushani; 8 ноября 2003 &status.done;
xrpu(4) драйвер Xilinx FPGA/RPU   7 ноября 2003 &status.new;
zs(4) драйвер Zilog UART   7 ноября 2003 &status.new;


Обозначения
&status.new; Ещё не начата
&status.blocked; Заблокирована в ожидании завершения другой задачи
&status.wip; В работе
&status.done; Задача завершена
&status.n-a; Не запланирована

Главная страница Проекта Документирования FreeBSD &footer; diff --git a/ru/docproj/translations.sgml b/ru/docproj/translations.sgml index bf9b1dae32..d175f914dc 100644 --- a/ru/docproj/translations.sgml +++ b/ru/docproj/translations.sgml @@ -1,359 +1,359 @@ + %includes; ]> &header;

Бразильско-португальский Проект Документирования FreeBSD

Web: http://doc.fugspbr.org/
E-Mail: lioux@FreeBSD.org
Имеющиеся списки рассылки
Перейдите по следующей ссылке http://lists.fugspbr.org/listinfo.cgi/doc-fugspbr.org/ за инструкциями по подписке на список рассылки бразильско-португальской группы перевода.
Или отправьте письмо на doc-request@fugspbr.org со словом "subscribe" в теме письма.
Создавать новые сообщения могут участники списка рассылки doc@fugspbr.org
Имеющиеся документы
-
+
FAQ
+ href="&enbase;/doc/pt_BR.ISO8859-1/articles/contributing/index.html"> Как помочь FreeBSD
Документы, находящиеся в работе
Пример проекта документирования FreeBSD для новых участников
Руководство FreeBSD

Болгарский Проект Документирования FreeBSD

Web: http://fdp-bg.sourceforge.net/
E-Mail: doc-proj@FreeBSD-bg.org
Имеющиеся списки рассылки
Перейдите по следующей ссылке URL http://www.FreeBSD-bg.org/showtopic?art=maillist за инструкциями по подписке на список рассылки болгарской группы перевода.
Или, отправьте письмо на majordomo@FreeBSD-bg.org с текстом "subscribe doc-proj" в теле письма.
Создавать новые сообщения могут участники списка рассылки doc-proj@FreeBSD-bg.org
Имеющиеся документы
Пример проекта документирования FreeBSD для новых участников
Документы, находящиеся в работе
Руководство FreeBSD
Сайт FreeBSD

Проект Документирования на традиционном китайском

Web: -
E-Mail: foxfair@FreeBSD.org
Имеющиеся списки рассылки
Пошлите письмо со строчкой "subscribe freebsd-chinese-doc" на адрес majordomo@freebsd.sinica.edu.tw.
Посылка сообщений разрешена участникам по адресу freebsd-chinese-doc@freebsd.sinica.edu.tw
Имеющиеся документы
- FAQ
+ FAQ
Документы, находящиеся в работе
Руководство

Проект Документирования на упрощенном китайском

Web: www.FreeBSD.org.cn
- Список рассылки: http://lists.freebsd.org.cn/mailman/listinfo
+ Список рассылки: http://lists.FreeBSD.org.cn/mailman/listinfo
E-Mail: ld@FreeBSD.org.cn

Датский Проект Документирования FreeBSD

E-Mail: asmodai@FreeBSD.org
Документы, находящиеся в работе
Руководство

Эстонский Проект Документирования FreeBSD

Web: http://www.bsd.ee/tolge.php
Имеющиеся документы
Руководство FreeBSD

Французский Проект Документирования FreeBSD

Web: http://www.freebsd-fr.org
Имеющиеся списки рассылки
Пошлите письмо со строчкой "SUB freebsd-questions" на адрес listserver@freebsd-fr.org, чтобы подписаться на франкоязычный список рассылки, посвящённый вопросам пользователей.
Пошлите письмо со строчкой "SUB annonces" на адрес listserver@freebsd-fr.org, чтобы подписаться на франкоязычный список рассылки с анонсами.
Имеющиеся документы
-
FAQ
+
FAQ
-
Некоторые статьи и +
Некоторые статьи и пособия
Really Quick Newsletters
PicoBSD
Документы, находящиеся в работе
-
- Руководство, Web
+
+ Руководство, Web
Дерево CVS
CVS web
Пошлите письмо со строчкой "SUB cvs" на адрес listserver@freebsd-fr.org для того, чтобы подписаться на список рассылки French CVS update.

Немецкий Проект Документирования FreeBSD

Web: http://www.de.FreeBSD.org/de/uebersetzung.html
E-Mail: de-bsd-translators@de.FreeBSD.org
Документы, находящиеся в работе
- Руководство, - FAQ, - Web + Руководство, + FAQ, + Web

Итальянский Проект Документирования FreeBSD

Web: http://www.gufi.org/
E-Mail: info@gufi.org
Документы, находящиеся в работе
Руководство

Японский Проект Документирования FreeBSD

Web: http://www.jp.FreeBSD.org/doc-jp/
E-Mail: doc-jp@jp.FreeBSD.org
Имеющиеся документы
- Руководство, - FAQ, - Web, + Руководство, + FAQ, + Web, FreeBSD NewsLetter Issue #2
Документы, находящиеся в работе
FreeBSD Tutorials

Корейский Проект Документирования FreeBSD

Web: http://www.kr.FreeBSD.org/projects/doc-kr/
E-Mail: doc@kr.FreeBSD.org
Документы, находящиеся в работе
Руководство

Польский Проект Документирования FreeBSD

Web: http://tlumaczenie.freebsd.pl
E-Mail: ni@merkury.pol.lublin.pl
Имеющиеся документы
Некоторые учебники
Документы, находящиеся в работе
Учебники FreeBSD
Руководство
FDP-Primer

Румынский Проект Документирования FreeBSD

Web: http://www.rofug.ro/projects/ro-l10n/
E-Mail: ady@rofug.ro
Имеющиеся списки рассылки
Для подписки на список рассылки ro-l10n обратитесь к вебсайту проекта или отправьте письмо на listar@rofug.ro с телом "subscribe ro-l10n".
Создавать новые сообщения могут только участники списка рассылки ro-l10n.
Документы, находящиеся в работе
Руководство

Русский Проект Документирования FreeBSD

Web: http://www.FreeBSD.org.ua
E-Mail: frdp@FreeBSD.org.ua
Имеющиеся документы
-
FAQ
-
WWW
+
FAQ
+
WWW
Другие документы
QA
Документы, находящиеся в работе
Руководство

Испанский Проект Документирования FreeBSD

Web: http://www.es.FreeBSD.org/es/
E-Mail: jesusr@es.FreeBSD.org
Имеющиеся документы
-
FAQ
+
FAQ
Документы, находящиеся в работе
Руководство

Главная страница Проекта Документирования FreeBSD &footer; diff --git a/ru/docproj/who.sgml b/ru/docproj/who.sgml index 9c8cbd7472..ad1864277f 100644 --- a/ru/docproj/who.sgml +++ b/ru/docproj/who.sgml @@ -1,45 +1,45 @@ - + %includes; ]> &header;

Проект представляет собой слабо связанную группу людей; единственное, что у нас имеется общего - это подписка на список рассылки FreeBSD-doc@FreeBSD.ORG.

+ href="mailto:FreeBSD-doc@FreeBSD.org">FreeBSD-doc@FreeBSD.org.

Некоторые из нас могут вносить изменения непосредственно в дерево документации FreeBSD. Вы можете увидеть полный список + href="&enbase;/doc/en_US.ISO8859-1/articles/contributors/staff-committers.html"> разработчиков FreeBSD с коммит привилегиями, как и список + href="&enbase;/doc/en_US.ISO8859-1/articles/contributors/staff-doc.html"> главных коммиттеров проекта документирования FreeBSD.

Другие не имеют таких прав, но они пишут и присылают нам документацию независимо от этого. Как только она будет отправлена в соответствии со страницей посылка документации, один из коммиттеров просмотрит ее и включит в наш пакет документации.

Если вы хотите помочь проекту документирования (и я страстно надеюсь на это), все, что вам нужно сделать - это подписаться на список рассылки и поучаствовать в обсуждениях. Как только вы это сделаете, можете считать себя участником проекта.

FreeBSD Documentation Project Home &footer diff --git a/ru/features.sgml b/ru/features.sgml index 2c7260f28e..05f9e0a75d 100644 --- a/ru/features.sgml +++ b/ru/features.sgml @@ -1,116 +1,135 @@ %includes; ]> &header;

FreeBSD имеет много возможностей.

Вне зависимости от характера вашего приложения, вы хотите, чтобы ресурсы системы использовались максимально эффективно. Возможности, предоставляемые FreeBSD, позволяют достичь этого.


Полноценная операционная система, базирующаяся на 4.4BSD.

Корни FreeBSD растут из последнего дистрибутива BSD, выпущенного Группой Исследования Вычислительных Систем (Computer Systems Research Group) Калифорнийского Университета (Беркли). Книга The Design and Implementation of 4.4BSD Operating System, написанная создателями системы 4.4BSD, подробно описывает многие из базовых функций FreeBSD.

Основанный на умениях и опыте различных разработчиков по всему миру, проект FreeBSD постоянно работает над расширением набора возможностей операционной системы 4.4BSD во многих аспектах, стараясь, чтобы каждый новый релиз ОС был более стабильным, быстрым и содержал новые возможности, которые нужны пользователям.


FreeBSD даёт более высокую производительность, большую совместимость с другими операционными системами при меньших затратах на администрирование.

Разработчики FreeBSD преодолели некоторые гораздо большие трудности при разработке операционной системы, чтобы дать вам следующие возможности:

В настоящий момент среди ведущихся разработок есть поддержка для точного блокировки SMP в ядре, что позволяет добиться более высокой производительности на многопроцессорных машинах, поддержка Активизации Планировщика (Scheduler Activation), что позволит добиться параллелизма в многопоточных программах, мгновенные копии файловой системы, загрузка системы без выполнения проверки файловой системы, оптимизация сетевых операций, например, сокеты с мгновенным копированием и событийно-управляемый ввод/вывод на сокетах, поддержка ACPI и мощные - возможности по безопасности, такие, как обязательный контроль доступа + возможности по безопасности, такие, как принудительный контроль доступа (Mandatory Access Control).

+
Во FreeBSD имеется масса возможностей по + обеспечению информационной безопасности и защиты сетей и + серверов. + +
+

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

+ +

Во FreeBSD имеется поддержка криптографического программного + обеспечения, безопасных командных процессоров, аутентификации + Kerberos, "виртуальных серверов", создаваемых при помощи технологии + jail, функций по формированию ограниченной файловой системы, + безопасных RPC-сервисов и списков доступа для сервисов, поддерживающих + TCP-обработчики.

+
+ &footer; diff --git a/ru/smp/index.sgml b/ru/smp/index.sgml index 1d02e9762f..98ce0c1a02 100644 --- a/ru/smp/index.sgml +++ b/ru/smp/index.sgml @@ -1,21 +1,2007 @@ + + - + + %includes; + + +Выполнено"> +Выполняется"> +Заброшено"> +Не начиналось"> +Решено"> +Не решено"> + + + + %developers; + ]> - - - -&header; + &header; + +

Содержание

+ + + + +

Цель проекта

+ +

Проект FreeBSD SMP, часто обозначаемый как SMPng (SMP следующего + поколения), направлен на реализацию поддержки SMP до уровня мелких структур + в ядре FreeBSD. Впервые эта поддержка появилась в январе 2003 года в + 5.0-RELEASE. По историческим причинам развития FreeBSD, это было похоже + на попытку протиснуть квадратный ящик через круглую дыру, и поэтому + промежуточные результаты не были столь хороши по многим параметрам. Мы + целенаправленно не пытаемся ни переписать ядро с нуля, ни изменить все + архитектурные особенности, имеющиеся в ядре. Этот проект направлен на + практическую реализацию, а не теоретические исследования.

+ + +

План работы проекта

+ +

На этой Web-странице содержится информация, относящаяся к попыткам + улучшить поддержку SMP во FreeBSD. В целом проект использует всё возможное + из разрабатываемого ядра BSD/OS 5.0, и повторно реализует то, что нельзя + использовать напрямую, из-за различий в основном коде.

+ +

Как и для любого некоммерческого проекта, разработка детального плана + работ невозможна. Мы ожидаем получить значительного улучшения + производительности и стабильности, проблемы с которыми должны быть решены + в течение первых нескольких месяцев работы над проектом, хотя все + возможные усилия будут прилагаться и к сохранению работоспособности + -current.

+ +

Перечень задач ниже не претендует на полноту, но представляет набор + имеющих отношение к делу и/или важных компонентов общей работы. Поле + "Ответственный" указывает на разработчика, который изъявил желание отвечать + за завершение определённой задачи; это не исключает участия других, но + предполагает соответствующую координацию работ с ответственным лицом, чтобы + исключить дублирование работ и максимально их ускорить. При начале работ + в незанятой или новой области значительного объёма стоит отправить письмо + по электронной почте в адрес списка рассылки FreeBSD по SMP, для + определения того, сделано ли какое-то движение.

+ +

Смысл поля даты варьируется в зависимости от состояния работы. Для + выполненных задач оно обозначает дату завершения или сообщения о + завершении. Для выполняемых задач оно обозначает дату последнего + обновления. Для заброшенных задач оно обозначает дату объявления об + этом. Для новых задач оно обозначает дату добавления задачи к списку.

+ +

Процесс отсечения отдельных драйверов устройств отслеживается на Web-странице преобразования + драйверов busdma и SMPng.

+ +

Задачи отсортированы сначала по состоянию, затем по дате.

+ + +

Ресурсы и ссылки

+ + + + +

Подсистемы и их разработчики

+ +

Это неполный перечень высокоуровневых подсистем ядра и тех, кто активно + работает над архитектурой SMP и её стабильностью.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПодсистемаСостояниеПоследнее обновлениеРазработчики
Newbus&status.wip;5 октября 2003&a.imp;
VM&status.wip;4 октября 2003&a.alc;
Кэш-буфер&status.wip;4 октября 2003&a.jeff;, &a.phk;
VFS&status.wip;4 октября 2003&a.jeff;
Процессы и операции с потоками&status.wip;5 мая 2003&a.jhb;
Планировщик&status.wip;5 февраля 2003&a.jhb;
GEOM&status.done;5 февраля 2003&a.phk;
Файловые дескрипторы&status.done;5 февраля 2003&a.alfred;, &a.tanimura;
Подсистема TTY&status.new;
Конвейерные IPC&status.done;4 октября 2003&a.alfred;
Структуры сокетов и системные вызовы&status.wip;4 октября 2003&a.tanimura;, &a.hsu;, &a.sam;
IPv4, IPv6&status.wip;4 октября 2003&a.hsu;, &a.jennifer;, &a.sam;, &a.rwatson;
Инфраструктура сетевого стека&status.wip;4 октября 2003&a.hsu;, &a.sam;
+ + +

Работы

+ +

Далее следует неполный перечень работ общего характера.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -

Информацию о Проекте FreeBSD SMPng Вы сможете найти по ссылке - http://people.freebsd.org/~jasone/smp/.

+ + + + + + -

Информация будет перемещена сюда в течение ближайших недель.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ЗадачаОтветственныйПоследнее обновлениеСостояние
Преобразовать giant-блокировки от типа spinning к blocking, + добавить блокировку планировщика и простаивающие процессы для каждого + процессора.&a.dillon;25 июня 2000&status.done;
Перенос примитивов блокировки из BSD/OS (i386).&a.jake;3 июля 2000&status.done;
Реализовать тяжёлые потоки выполнения для прерываний (i386).&a.grog;3 августа 2000&status.done;
Переписать низкоуровневый код прерываний (i386 UP).&a.grog;3 августа 2000&status.done;
Добиться достаточной стабильности (построение полной системы на + самом хосте) (i386 UP).разработчики -smp12 августа 2000&status.done;
Перенос примитивов блокировки из BSD/OS (alpha).&a.dfr;24 августа 2000&status.done;
Заменить заглушками (отключить) вызовы spl().&a.grog;30 августа 2000&status.done;
Перенос кода ktr из BSD/OS.&a.grog;, &a.jhb;30 августа 2000&status.done;
Переписать низкоуровневый код обработки прерываний (i386 SMP).&a.jhb;1 сентября 2000&status.done;
Добиться достаточной стабильности (построение полной системы на + самом хосте) (i386 SMP).-smp developers6 сентября 2000&status.done;
Добиться достаточной стабильности (построение полной системы на + самом хосте) (alpha).-smp developers6 сентября 2000&status.done;
Сделать malloc и сопутствующие функции работающими с потоками + выполнения.&a.jasone;10 сентября 2000&status.done;
Реализовать обработчик msleep(), сделать tsleep() обработчиком + msleep().&a.jake;11 сентября 2000&status.done;
Сделать драйвер fxp работающим с потоками выполнения.&a.cp;17 сентября 2000&status.done;
Сделать mbuf работающими с потоками выполнения.&a.bmilekic;29 сентября 2000&status.done;
Переработать менеджер блокировок.&a.jasone;3 октября 2000&status.done;
Реализовать тяжёлые потоки прерываний (alpha).&a.jhb;, &a.dfr;5 октября 2000&status.done;
Переписать низкоуровневый код обработки прерываний (alpha).&a.dfr;, &a.jhb;5 октября 2000&status.done;
Сбор статистику по процессу.&a.tegge;, &a.jhb;5 октября 2000&status.done;
Сделать драйверы ethernet работающими с потоками.&a.wpaul;15 октября 2000&status.done;
Сделать заголовочные файлы для семафоров в основном + машинно-независимыми.&a.jhb;20 октября 2000&status.done;
Переименовать SMP_DEBUG в MUTEX_DEBUG.&a.jhb;20 октября 2000&status.done;
Выделить каждому программному прерыванию собственный поток + выполнения.&a.cp;25 октября 2000&status.done;
Сделать sf_bufs (sendfile(2)) работающим с потоками.&a.bmilekic;5 ноября 2000&status.done;
Заставить фиксирующий код работать корректно.&a.jhb;18 ноября 2000&status.done;
Отделить специфичный для ktr код от db_interface.c.&a.jhb;15 декабря 2000&status.done;
Преобразовать драйвер sio к использованию spin-семафора.&a.jhb;18 декабря 2000&status.done;
Реализовать условные переменные.&a.jake;, &a.jasone;15 января 2001&status.done;
Добавить флаг к mtx_init() (MTX_RECURSE), который отмечает, можно + ли использовать семафор рекурсивно.&a.bmilekic;19 января 2001&status.done;
Сделать зонный распределитель работающим с потоками.&a.des;21 января 2001&status.done;
Преобразовать простые блокировки к семафорам.&a.jasone;24 января 2001&status.done;
Сделать ядро вытесняющим в отношении прерываний.&a.jake;31 января 2001&status.done;
Вычистка API для семафоров.&a.bmilekic;8 февраля 2001&status.done;
Удалить COM_LOCK.&a.markm;11 февраля 2001&status.done;
Объединить различные классы планирования в одну очередь выполнения. + Модифицировать планировщик для поддержки вытесняющего ядра.&a.jake;11 февраля 2001&status.done;
Заставить распространение приоритетов работать корректно.&a.jake;11 февраля 2001&status.done;
Сделать код треда обработки прерываний машинно-независимым и + совместно используемым между программными и аппаратными + прерываниями.&a.jhb;18 февраля 2001&status.done;
Добавить защиту к структуре jail и функциональности, связанной с + jail.&a.rwatson;20 февраля 2001&status.done;
Реализация блокировок sx (совместные/эксклюзивные).&a.jasone;5 марта 2001&status.done;
Обобществление/улучшение фиксации для обработки более сложных + примитивов блокировки (mtx, sx).&a.jhb;28 марта 2001&status.done;
Преобразование блокировок allproc и proctree от блокировок lockmgr + к блокировкам sx.&a.jhb;28 марта 2001&status.done;
В системе mbuf использовать условные переменные вместо + msleep()/wakeup().&a.bmilekic;2 апреля 2001&status.done;
Удалить включаемые файлы <sys/mutex.h> из других включаемых + файлов ядра, таких, как <vm/vm_zone.h>, + <sys/resourcevar.h>, <sys/ucred.h> и + <sys/mbuf.h>.&a.markm;15 мая 2001&status.done;
Зачистка различных файлов mp_machdep.c, унификация различных API + для SMP, например, доставка IPI и так далее.&a.jhb;15 мая 2001&status.done;
Сделать большинство функций forward_* и forwarded_* машинно + независимыми.&a.jhb;15 мая 2001&status.done;
Закончить машинно-зависимую часть поддержки SMP на платформе + Alpha.&a.gallatin;, &a.dfr;, &a.jhb;15 мая 2001&status.done;
Преобразовать select() к использованию условных переменных.&a.tanimura;15 мая 2001&status.done;
Добавить блокировку "giant" вокруг подсистемы VM.&a.alfred;13 июня 2001&status.done;
Создать изменённый slab-аллокатор для подсистемы mbuf.&a.bmilekic;21 июня 2001&status.done;
Добавить функцию witness_assert() для обработки добавлений + блокировок.&a.jhb;27 июня 2001&status.done;
Расширить блокировки sx для поддержки операций по попытке + блокирования.&a.jhb;27 июня 2001&status.done;
Задокументировать KTR.&a.jhb;28 июня 2001&status.done;
Сделать fork_return, fork_exit, ast и userret + машинно-независимыми.&a.jhb;29 июня 2001&status.done;
Сделать свойство savecrit из sched_lock процесса сохраняемым и + восстанавливаемым в mi_switch и инициализируемым в fork_exit.&a.jhb;30 июня 2001&status.done;
Создать цикл ast().&a.jhb;10 августа 2001&status.done;
Добавить операции upgrade/downgrade блокировки sx.Alexander Kabaev, &a.jasone;13 августа 2001&status.done;
Реализовать семафоры.&a.jasone;14 августа 2001&status.done;
Добавить поддержку upgrade/downgrade в witness.&a.jhb;23 августа 2001&status.done;
Сделать основной объём cpu_wait() и cpu_exit() + машинно-независимым.&a.peter;9 сентября 2001&status.done;
Разделить NFS на клиентскую и серверную части.&a.peter;18 октября 2001&status.done;
Отделить taskqueues.&a.arr;, &a.jhb;25 октября 2001&status.done;
Добавить ссылку на ucred в каждый тред.&a.jhb;25 октября 2001&status.done;
Сделать большинство связанного с процессорами + машинно-независимым.&a.jhb;11 декабря 2001&status.done;
Сделать в критическом разделе сохраняемым состояние для каждого + треда, вместо для каждой блокировки, чтобы межблокировочный цикл + блокировки работал корректно.&a.jhb;17 декабря 2001&status.done;
Заменить специфичный для APIC imen_mtx на машинно-независимый + icu_lock для защиты контроллеров прерываний и связанных данных в + ядре для i386 и alpha.&a.jhb;20 декабря 2001&status.done;
Использовать в критическом разделе для каждого треда вложенный + уровень в мьютексе и код треда прерывания для автоматического + определения, когда не нужно вытеснять задачу. Это делает флаги + MTX_NOSWITCH, SWI_SWITCH и SWI_NOSWITCH ненужными, так как ядро + сможет само определить своё правильное поведение.&a.jhb;5 января 2002&status.done;
Отделить структуры filedesc и file.&a.tanimura;, &a.alfred;12 января 2002&status.done;
Блокировка структур pgrp, session и sigio.&a.tanimura;23 февраля 2002&status.done;
Блокировка реализации конвейера, но не sigio/fown и взаимодействия + с VM&a.alfred;27 февраля 2002&status.done;
Перейти к явному подсчёту ссылок на программные vnode.&a.phk;8 марта 2002&status.done;
Инициализация пула мьютексов заранее, чтобы блокировки sx можно + было использовать для VM.&a.green;14 марта 2002&status.done;
Поместить глобальную блокировку (sellock) вокруг структур selinfo, + чтобы исправить различные обратные последовательности блокировок, и + сделать select() работающим с MP.&a.alfred;, &a.davidc;14 марта 2002&status.done;
Избавиться от Giant в системных вызовах read, write, pread, pwrite, + выделяя Giant на уровне файловых операций на каждую подсистему для + сокетов, VFS и так далее.&a.alfred;15 марта 2002&status.done;
Отделить структуры модулей ядра.&a.arr;18 марта 2002&status.done;
Отделить глобальные данные компоновщика ядра.&a.arr;18 марта 2002&status.done;
Переписать распределитель памяти ядра, чтобы он стал + slab-распределителем, использующим кэши каждого процессора.&a.jeff;21 марта 2002&status.done;
Заменить неправильное использование машинно-зависимый критический + раздел API на отключение прерываний при помощи специального API по + их выключению.&a.imp;, &a.dfr;, &a.benno;, &a.jhb;21 марта 2002&status.done;
Отделить доступ к совместно используемой структуре "параметров + процесса" через соответствующую защиту этой структуры и ссылок на + неё.&a.mini;31 марта 2002&status.done;
Перейти от блокировок flags/tsleep на блокировки sx для защиты + дерева sysctl от обновлений во время выполнения sysctl-операций.&a.mini;1 апреля 2002&status.done;
Создать/перенести пользовательский инструмент для управления + дампами по KTR-событиям.&a.jake;1 апреля 2002&status.done;
Создать макросы MTX_SYSINIT и SX_SYSINIT, которые разрешены для + инициализации блокировок, независящих от подсистемы.&a.arr;2 апреля 2002&status.done;
Отделить глобальную переменную уровня безопасности.&a.arr;2 апреля 2002&status.done;
Сделать grow_stack() машинно-независимой. Возможно, даже макросом + или встраиваемой функцией.&a.alc;6 апреля 2002&status.done;
Блокировка использования p_fd, что в противном случае приводит к + разрушению p_fd и аварийному завершению при большой нагрузке. Начать + с глобальной и перейти к блокировке на уровне процесса.&a.alfred;, &a.tanimura;8 апреля 2002&status.done;
Блокировка структуры pargs.&a.mini;9 апреля 2002&status.done;
Сделать {o,}sigreturn() MPSAFE.&a.alc;11 апреля 2002&status.done;
Переписать распределитель памяти ядра, чтобы Giant не требовался + для операций malloc() или free().&a.jeff;2 мая 2002&status.done;
Заменить комплексную схему блокировки shared/exclusive в VM-системе + на полностью эксклюзивную схему lockmgr, упрощая блокировку и + удаление потенциальные случаи livelock/deadlock.&a.green;, &a.alc;3 мая 2002&status.done;
Отказаться от Giant в системных вызовах readv/writev в стиле + read/write/pread/pwrite, как только malloc больше не потребуется + Giant при обработке структур iovec для uio.&a.alc;9 мая 2002&status.done;
Отказаться от Giant в mprotect(), minherit() и madvise(), чтобы + он больше не выделялся и не освобождался напрямую.&a.alc;18 мая 2002&status.done;
Обновить API для suser() и p_can*() API, чтобы принимать треды + вместо процессов.&a.jhb;18 мая 2002&status.done;
Широкий переход к td_ucred от p_ucred, как только появятся все + зависимости от KSE.&a.jhb;18 мая 2002&status.done;
Добавить проверку witness_sleep() к uma_zalloc() для отслеживания + кода, вызывающего malloc() или uma_zalloc() при удержании + неоткладываемых блокировок.&a.jhb;20 мая 2002&status.done;
Оптимизировать поддержку UP, заменив циклы блокировки на одну, + выполняющую только вход в критичный раздел и выходы.&a.jhb;21 мая 2002&status.done;
Заставить спящие мьютексы циклиться, если текущий держатель + блокировки выполняется на другом процессоре.&a.jhb;21 мая 2002&status.done;
Добавить поддержку для pause-инструкции IA32 для передвижения + циклов в блокировках.&a.jhb;21 мая 2002&status.done;
Сделать KTRACE пишущим в трассировочные файлы асинхронно.&a.jhb;7 июня 2002&status.done;
Избавиться от Giant в jail(2).&a.arr;25 июня 2002&status.done;
Избавиться от Giant в modnext(2), modfnext(2), modstat(2) и + modfind(2).&a.arr;25 июня 2002&status.done;
Исправить синхронизацию очистки TLB и invlpg() на x86 SMP.&a.peter;12 июля 2002&status.done;
Сделать cpu_coredump машинно-независимым.&a.peter;7 сентября 2002&status.done;
Добавить блокировку подсистемы в коду сбора статистики.&a.arr;11 сентября 2002&status.done;
Исправить SIGXPU и другие вещи типа #if 0 в mi_switch().&a.jhb;30 сентября 2002&status.done;
Отделение реализации MAC из TrustedBSD.&a.rwatson;11 ноября 2002&status.done;
Блокировка обработчиков событий.&a.msmith;, &a.mini;, &a.jhb;11 марта 2003&status.done;
Исправить PHOLD(), чтобы она блокировалась для гарантированного + PS_INMEM.&a.jhb;22 апреля 2003&status.done;
Исправить различные procfs_machdep.c, которые не должны + использовать sched_lock.&a.jhb;22 апреля 2003&status.done;
Блокировка всех ссылок на полномочия процессов и удалить Giant из + системных вызовов, связанных с полномочиями процессов.&a.jhb;1 мая 2003&status.done;
Объединить структуры procsig и sigacts, перенести новую структуру + sigacts из U-области о добавить соответствующую блокировку.&a.jhb;13 мая 2003&status.done;
Удалить Giant из системных вызовов kill() и killpg().&a.jhb;13 мая 2003&status.done;
Улучшить реализацию пула мьютексов, разрешив создание и + использование нескольких динамически распределяемых пулов с + настраиваемыми размерами пулов и параметрами мьютексов.&a.truckman;16 июля 2003&status.done;
Создать инструмент профилирования мьютексов для ядра, чтобы + замерять использование и поведение мьютексов ядра.&a.eivind;, &a.des;31 марта 2002&status.done;
Отделить реализацию конвейеров: оптимизации VM. 4 октября 2003&status.done;
Повторно реализовать код прерываний i386 и SMP, чтобы SMP-ядра + работали на UP-машинах и SMP можно было включить в GENERIC.&a.jhb;3 ноября 2003&status.done;
Реализовать общие подходы для использования при блокировках без + ожиданий.&a.jhb;11 ноября 2003&status.done;
Отделение структуры proc.&a.jhb;20 февраля 2001&status.wip;
Сделать ядро полностью вытесняемым.&a.jhb;7 сентября 2001&status.wip;
Отделение подсистемы tty.Dick Garner, Jeremy Scofield, &a.tmm;2 апреля 2002&status.wip;
Исправить блокировку часов, которая должна быть одинаковой на всех + платформах.&a.jhb;16 ноября 2001&status.wip;
Отделить реализацию конвейера: трудности с sigio/fown&a.alfred;27 февраля 2002&status.wip;
Использовать блокировку процесса и счётчики ссылок на процесс для + защиты интерфейсов отладки (и procfs).&a.jhb;27 февраля 2002&status.wip;
Использовать блокировку процессов для защиты sysctl-вызовов + мониторинга процесса, включая те, что используются 'ps' и + сопутствующими инструментами. + &a.jhb;27 февраля 2002&status.wip;
Отделить инфраструктуру newbus для поддержки точного управления + драйверами.&a.imp;28 февраля 2002&status.wip;
Удалить флаг совместимости системного вызова с MP из таблицы + системных вызовов, и добавить исключительные mtx_lock/unlock для + Giant ко всем системным вызовам.&a.dillon;, &a.mux;28 февраля 2002&status.wip;
Документирование архитектуры SMPng.&a.jhb;, &a.rwatson;28 февраля 2002&status.wip;
Переход к совместной блокировке VOP_GETATTR() для уменьшения + блокировки во время выполнения частых простых операций с VFS. + Модификация namei() в целях предоставления флага LOOKUP_SHARED, + который показывает, что требуемая блокировка может быть совместной, + а не исключительной.&a.jeff;11 марта 2002&status.wip;
Отделение иерархии sysctl и методов доступа.&a.mini;9 апреля 2002&status.wip;
Документирование существующей блокировки vm_map и проверка её + корректности.&a.alc;18 мая 2002&status.wip;
Документирование существующей блокировки vm_object и проверка её + корректности.&a.alc;4 мая 2002&status.wip;
Отделение структур linker_file_t в компоновщике ядра.&a.arr;19 июня 2002&status.wip;
Отделение кода SysV IPC.&a.alfred;13 августа 2002&status.wip;
Пересмотр стратегии блокировки и корректности операций VFS, + исправление различных режимов сбоев, связанных с включением + добавлений VFS-вызовов.&a.jeff;10 декабря 2002 &status.wip;
Документирование стратегии блокировки внутри vnode, её вычистка, + удаление внутренних блокировок, переключение на sx-блокировки.&a.jeff;10 декабря 2002&status.wip;
Реализовать упрощённое переключение треда прерываний (обмен + контекстами) на i386.&a.bmilekic;, &a.kan;10 декабря 2002&status.wip;
Реализовать упрощённое переключение треда прерываний (обмен + контекстами) на sparc64.&a.jake;10 декабря 2002&status.wip;
Переход от использования lockmgr в VM к использованию мьютекса или + исключительного sxlock. Избавиться от Giant во всех VM, кроме для + компонентов vm_object/VFS и vm_page/pmap.&a.alc;10 декабря 2002&status.wip;
Модификация API драйверов устройств, чтобы разрешить драйверам + более просто делить код на "в контексте прерывания" и "в треде + прерывания" для более быстрого подтверждения прерываний. Это + уменьшит латентность обработки прерываний.&a.peter;4 октября 2003&status.wip;
Создать механизм в структуре cdevsw для защиты драйверов, не + принимающих во внимание треды.&a.jhb;15 мая 2001&status.stalled;
Сделать printf() безопасной для вызова практически в любом месте + во избежание патовых блокировок.&a.cp;15 мая 2001&status.stalled;
Добавить блокировку к NFS. 15 мая 2001&status.new;
Удалить параметр приоритетности из tsleep(), msleep() и + cv_*wait*(). 12 января 2001&status.new;
Повторно реализовать kqueue при помощи условных переменных.&a.jlemon;15 марта 2001&status.new;
Сделать атомарные операции в SMP-коде условными, что используется + для статистики в целях отладки.&a.peter;15 марта 2001&status.new;
Добавить новую регулярную проверку для существующих процессов на + предмет отсутствия блокировок.&a.jhb;13 июня 2001&status.new;
Задание приоритетов для условных переменных, семафоров и + sx-блокировок. 7 сентября 2001&status.new;
Убрать максимум schedpu() в предпочтении обновлений по + событиям. 7 сентября 2001&status.new;
Исправить *hold (например, crhold) на возврат ссылки на + объект. 7 сентября 2001&status.new;
Добавить регулярную проверку на блокировки lockmgr. 7 сентября 2001&status.new;
Добавить сдвигаемые блокировки ICU на ia64. 4 января 2002&status.new;
Быстрое избавление от Giant для VOP_READ() и VOP_WRITE(). 25 февраля 2002&status.new;
Инструмент замеров содержания блокировок, замеряющий смысл + различных блокировок, включая Giant, позволяющий более напрямую + оптимизировать производительность и стратегию блокировок. 25 февраля 2002&status.new;
Перенос забора Giant в системные вызовы Linux i386 ABI. 25 февраля 2002&status.new;
Перенос захвата Giant в системные вызовы Linux AXP ABI. 25 февраля 2002&status.new;
Перенос захвата Giant в системные вызовы SVR4 i386 ABI. 25 февраля 2002&status.new;
Перенос захвата Giant в системные вызовы OSF/1 AXP ABI. 25 февраля 2002&status.new;
Перенос захвата Giant в системные вызовы IBCS i386 ABI. 25 февраля 2002&status.new;
Расширение инструмента профилирования мьютексов на профилирование + также и sx-блокировок.&a.eivind;, &a.des;1 апреля 2002&status.new;
Реализовать atomic_fetchadd() для данных int и long с версиями acq + и rel. 23 мая 2002&status.new;
Реализовать простой API счётчика ссылок, использующий атомарные + операции, для замены блокировок, которые всего лишь защищают счётчики + ссылок. 23 мая 2002&status.new;
Реализовать абстракцию очереди пауз для использования как в + msleep(), так и условных переменных. Эта новая абстракция должна + использовать хэш-таблицу очередей пауз с перемещаемой блокировкой в + каждой цепочке очереди пауз, похожей на проходные цепочные + блокировки, чтобы сделать sched_lock проще.&a.jhb;23 мая 2002&status.new;
Добавить проверку witness_sleep() для copyin/out() и + s/fuword().&a.jhb;7 июня 2002&status.new;
Разделить witness_lock() на witness_checkorder() и + witness_lock(). witness_checkorder() будет вызываться перед + получения блокировки для увеличения изменений в обнаружении и + предупреждении обратного ход перед безысходной блокировкой. + witness_lock() будет просто обновлять внутреннее состояние witness + для пометки того, что блокировка была выделена.&a.jhb;7 июня 2002&status.new;
+ +

В этой таблице перечислены подзадачи, которые нужно выполнить для + того, чтобы сделать стек сетевых протоколов многопоточным.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ЗадачаОтветственныйПоследнее обновлениеСостояние
Защитить очереди сетевых интерфейсов.&a.jlemon;24 ноября 2000&status.done;
Отделение IP.&a.jennifer;, &a.hsu;10 июня 2002&status.done;
Отделение TCP.&a.jennifer;, &a.hsu;10 июня 2002&status.done;
Отделение UDP.&a.jennifer;, &a.hsu;10 июня 2002&status.done;
Отделение счётчиков ссылок ifaddr.&a.hsu;18 декабря 2002&status.done;
Отделение списка ifnet.&a.hsu;21 декабря 2002&status.done;
Отделение деревьев radix.&a.hsu;23 декабря 2002&status.done;
Отделение ARP.&a.hsu;16 января 2003&status.done;
Отделение сырого IP.&a.sam;4 октября 2003&status.done;
Отделение сокетов divert.&a.sam;4 октября 2003&status.done;
Отделение ipfw2.&a.sam;4 октября 2003&status.done;
Отделение DUMMYNET.&a.sam;4 октября 2003&status.done;
Отделение моста ethernet.&a.sam;4 October 2003&status.done;
Отделение очередей фрагментирования IP.&a.rwatson;4 октября 2003&status.done;
Отделение таблиц маршрутизации.&a.sam;4 октября 2003&status.done;
Отделение FAST_IPSEC.&a.sam;4 октября 2003&status.done;
Разрешить параллельные записи в обработке isr.&a.rwatson;, &a.sam;11 октября 2003&status.done;
Отделение syncache.&a.hsu;, &a.sam;10 ноября 2003&status.wip;
Отделение протоколов домена &unix;.&a.hsu;, &a.sam4 октября 2003&status.wip;
Отделение IPv6.&a.sam;, &a.rwatson;, &a.ume;11 октября 2003&status.wip;
Отделение уровня сокетов.&a.tanimura;, &a.sam10 октября 2003&status.wip;
Разрешить выполнение передачи IP без Giant.&a.sam;10 октября 2003&status.wip;
Отделение структуры ifnet. 19 января 2001&status.new;
Уменьшить совместное обращение при блокировке буфера сокета, + заменив tsleep() и wakeup() на условную переменную.&a.tanimura;21 апреля 2002&status.new;
+ + +

Известные проблемы

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ПроблемаПоследнее обновлениеСостояние
Время холостой работы процессора не передаётся процессам холостой + работы.20 сентября 2000&status.resolved;
microuptime нарушает обратную совместимость.4 октября 2000&status.resolved;
microuptime() требует обратной совместимости4 October 2000&status.resolved;
Учёт процессов неточен (чем больше процессоров, тем ближе + точность).5 октября 2000&status.resolved;
M_DEVBUF, вероятно, неправильный пул памяти для прерываний, и + мы должны подумать о создании нового пула выделения памяти для + этого.9 февраля 2001&status.resolved;
Отключение ПК-адаптера вызывает аварийное завершение из-за + условных ошибок в коде треда обработчки прерываний.15 марта 2001&status.resolved;
Машины SMP x86 видят прерывания NCPU * 100 clk и прерывания + NCPU * 128 rtc.15 мая 2001&status.resolved;
Проверка будет бесконечно рекурсивной при получении Giant после + паузы с блокировкой с возможностью установки паузы.27 июня 2001&status.resolved;
Последовательный gdb не работает, если заданы параметры boot_ddb и + boot_gdb.14 июля 2002&status.resolved;
Последовательный gdb не работает на скорости 115200.14 июля 2002&status.resolved;
Последовательный gdb никогда не получает управление обратно, если + был введён 'cont'.14 июля 2002&status.resolved;
Профилирование не работает.20 февраля 2001&status.unresolved;
jail_sysvipc_allowed в системных вызовах SYSV IPC проверяется + небезопасным способом.5 марта 2002&status.unresolved;
+ + +

Новости

+ +

Оставшаяся часть страницы структурирована в виде журнала с обратной + хронологией записи.

+ + + + 30 октября 2003 + + + 13 января 2002 + + + 15 мая 2001 + + + 22 марта 2001 + + + 5 марта 2001 + + + 24 января 2001 + + + 12 января 2001 + + + 11 октября 2000 + + + 8 сентября 2000 + + + 6 сентября 2000 + + + 5 сентября 2000 + + + 1 сентября 2000 + + + 30 августа 2000 + + + 12 августа 2000 + + + 3 августа 2000 + + + 6 июля 2000 + + + 5 июля 2000 + + + 3 июля 2000 + + + 26 июня 2000 + + + 25 июня 2000 + + + 19 июня 2000 + &footer; +