- MFen: articles/5-roadmap/article.sgml 1.27 --> 1.30 (PR: docs/145353)

- reworded a couple of sentences
 - several letter case swaps

Approved by: maxim (mentor), marck (mentor)
This commit is contained in:
Taras Korenko 2010-07-02 11:25:40 +00:00
parent 6c6b6de4c1
commit 74e729df7b
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=35950

View file

@ -3,7 +3,7 @@
$FreeBSDru: frdp/doc/ru_RU.KOI8-R/articles/5-roadmap/article.sgml,v 1.7 2007/05/15 06:07:48 gad Exp $
Original revision: 1.27
Original revision: 1.30
-->
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [
@ -55,7 +55,9 @@
В качестве иного взгляда на проблему может быть интересна статья
<ulink url="&url.articles.version-guide;">
<quote>Выбор подходящей для вас версии &os;</quote>
</ulink>. Она была написана в Августе 2005 г. (на два с половиной
</ulink>.
Статья <quote>Выбор подходящей для вас версии &os;</quote>
была написана в Августе 2005 г. (на два с половиной
года позже) и содержит раздел, в котором описывается как разворачивались
планы и события, а также какие уроки были получены.</para>
</abstract>
@ -85,7 +87,7 @@
привело к тому, что качество релизов 3.0 и 3.1 не могло удовлетворить
большинство пользователей, и так было до версии 3.2, когда линейка была
признана <quote>стабильной</quote>. Хуже того, ветка &t.releng.3; была
создана на основе релиза 3.0. а ветка &t.releng.head; должна была вести к
создана на основе релиза 3.0, а ветка &t.releng.head; должна была вести к
4-CURRENT. В результате ветки &t.releng.head; и &t.releng.3; стали
сильно отличаться, что значительно осложнило поддержку ветки
&t.releng.3;. &os; 2.2.8 была оставлена как последняя версия &os;,
@ -131,15 +133,15 @@
<itemizedlist>
<listitem>
<para>VM: Функция ядра malloc изолирована и освобождена
от Giant. Распределитель зон UMA также не использует Giant.
<para>VM: функция ядра malloc изолирована и освобождена
от Giant. Аллокатор зон UMA также не использует Giant.
Изоляция vm_object находится в работе и является важным шагом в
исключении Giant из работы с буферами/кэшем. Изоляция pmap ещё
не реализовывалась.</para>
</listitem>
<listitem>
<para>GEOM: Уровень блоков GEOM был разработан с учётом работы без
<para>GEOM: уровень блоков GEOM был разработан с учётом работы без
Giant и он позволяет работать модулям GEOM и низлежащим драйверам
блочных устройств без Giant. На данный момент только драйверы
&man.ata.4; и &man.aac.4; разделены и работают без
@ -156,7 +158,7 @@
</listitem>
<listitem>
<para>Сеть: Работа по переводу на изоляцию сетевого стека была
<para>Сеть: работа по переводу на изоляцию сетевого стека была
начата заново. Изначально целями были таблицы маршрутизации, ARP,
функции моста, IPFW, Fast-Forward, TCP, UDP, IP, Fast IPSEC и
уровни интерфейсов, а также некоторые драйверы устройств Ethernet.
@ -169,21 +171,21 @@
</listitem>
<listitem>
<para>VFS: Начата предварительная подготовка.</para>
<para>VFS: начата предварительная подготовка.</para>
</listitem>
<listitem>
<para>буфер/кэш: Закончена начальная работа по изоляции
<para>Буфер/кэш: закончена начальная работа по изоляции
буферов.</para>
</listitem>
<listitem>
<para>Proc: Начальное изоляция proc уже есть, во &os; 5.2 ожидается
<para>Proc: начальное изоляция proc уже есть, во &os; 5.2 ожидается
ещё больший прогресс.</para>
</listitem>
<listitem>
<para>CAM: На уровне CAM SCSI значительной работы не
<para>CAM: на уровне CAM SCSI значительной работы не
проделано.</para>
</listitem>
@ -214,7 +216,7 @@
</listitem>
<listitem>
<para>kernel encryption: криптографические драйверы и ядро технологии
<para>Kernel encryption: криптографические драйверы и ядро технологии
&man.crypto.4; не используют Giant. KAME IPsec не
отделяются.</para>
</listitem>
@ -225,11 +227,11 @@
</listitem>
<listitem>
<para>вытесняемость ядра: включена вытесняемость для потоков
<para>Вытесняемость ядра: включена вытесняемость для потоков
выполнения прерываний. Однако несогласованность из-за того, что
Giant используется в большинстве кода ядра и подпрограммах
обработки прерываний драйверов устройств, вызывает множество
лишних переключений контекста и может на самом деле сказаться на
лишних переключений контекста и может сказаться на
производительности. Ведётся работа по выяснению того, как сделать
вытесняемость условной.</para>
</listitem>
@ -244,8 +246,8 @@
подпрограммы обслуживания прерываний от устройств могут создавать
блокировки для выставления семафоров, выделения памяти и так далее.
Хотя это облегчает написание драйверов, при этом понижается
реактивность системы из-за того, что для обслуживания ithread должно
быть выполнено полное переключение контекста процесса. Это
реактивность системы из-за полного переключения контекста процесса,
которое должно быть выполнено для обслуживания ithread. Это
усугубляется значительным использованием ядром семафора Giant, и часто
приводит к множеству пауз и переключений контекстов для обслуживания
прерывания. Драйверы, которые зарегистрировали свои прерывания как
@ -263,18 +265,19 @@
<itemizedlist>
<listitem>
<para>Возможно, особый случай облегчённых ithread. При этом может,
придётся уменьшить количество сохраняемых данных контекста для
ithread, заимствовать стек из другого kthread и/или создавать
новый быстрый способ обхода подпрограммы mi_switch().</para>
<para>Как вариант &mdash; задействовать особый вид легковесных
ithread. Это могло бы привести к уменьшению количества сохраняемых
контекстов для ithread, к заимствованию стека из другого kthread
и/или к созданию нового быстрого пути, исключающего вызов
mi_switch().</para>
</listitem>
<listitem>
<para>Можно ввести новую модель обработки прерываний, которая
позволит драйверам регистрировать 'фильтр прерываний' вместе с
обычной процедурой обработки. Это будет похоже на используемую
сейчас в Mac OS X модель. Процедуры фильтрации прерываний позволят
драйверу определять, должен ли он участвовать в обработке
обычной процедурой обработки. Это будет похоже на модель,
используемую сейчас в Mac OS X. Процедуры фильтрации прерываний
позволят драйверу определять, должен ли он участвовать в обработке
прерывания, позволят ему подавлять источник прерываний и, возможно,
определять и планировать действия по его обработке. Она будет
работать в том же самом контексте, что и низкоуровневая процедура
@ -305,7 +308,7 @@
<itemizedlist>
<listitem>
<para>Компоненты уровня ядра и пользовательского уровня для KSE и THR
должны быть созданы для все платформ уровня Tier-1. Решение о том,
должны быть созданы для всех платформ уровня Tier-1. Решение о том,
какой пакет реализации потоков выполнения будет использоваться по
умолчанию, будет, скорее всего, приниматься для каждой платформы
отдельно, в зависимости от стабильности и завершённости каждого
@ -501,7 +504,7 @@
<itemizedlist>
<listitem>
<para>KSE: И компоненты уровня ядра, и компоненты пользовательского
<para>KSE: и компоненты уровня ядра, и компоненты пользовательского
уровня должны достичь одинакового уровня функциональности во всех
платформах уровня Tier-1 в UP и SMP конфигурациях. Определение
того, что является <quote>платформами ранга Tier-1</quote>, можно
@ -520,7 +523,7 @@
</listitem>
<listitem>
<para>интерфейс и драйверы busdma: такие архитектуры, как PAE/&i386;
<para>Интерфейс и драйверы busdma: такие архитектуры, как PAE/&i386;
и sparc64, в которых отсутствует прямое отображение адресного
пространства хоста в адресное пространство плат расширения, требуют
исключения функции vtophys() и ей подобных. Интерфейс busdma был
@ -536,7 +539,7 @@
</listitem>
<listitem>
<para>распределение ресурсов PCI: соответствие спецификации PC2003
<para>Распределение ресурсов PCI: соответствие спецификации PC2003
требует, что системы x86 не конфигурировали устройства PCI из
системной BIOS, оставляя эту задачу исключительно ОС. Во &os;
должна появиться возможность управления и распределения ресурсов
@ -553,11 +556,11 @@
<title>Производительность</title>
<para>Производительность зависит от хода работ над инфраструктурой SMPng
и в следующих областях:</para>
в следующих областях:</para>
<itemizedlist>
<listitem>
<para>Устройства хранения: Технология GEOM позволяет драйверам
<para>Устройства хранения: технология GEOM позволяет драйверам
устройств хранения работать без использования Giant. Все драйверы,
которые взаимодействуют напрямую с GEOM (в противоположность тем,
что находятся ниже уровня CAM или другого промежуточного слоя),
@ -577,7 +580,7 @@
</listitem>
<listitem>
<para>Прерывания и переключение контекстов: Как обсуждалось выше,
<para>Прерывания и переключение контекстов: как обсуждалось выше,
задержки в прерываниях и переключениях контекстов имеют большое
влияние на производительность. Переключение контекстов для ithread
и kthread на всех платформах должно быть улучшено. Должна быть
@ -637,7 +640,7 @@
<itemizedlist>
<listitem>
<para>NEWCARD/OLDCARD: Подсистема NEWCARD во &os; 5.0 сделана
<para>NEWCARD/OLDCARD: подсистема NEWCARD во &os;&nbsp;5.0 сделана
используемой по умолчанию. К сожалению, в ней отсутствует
поддержка для не-Cardbus мостов и на некоторых лэптопах она
не работает из-за проблем с маршрутизацией прерываний.
@ -657,8 +660,8 @@
</listitem>
<listitem>
<para>Новый планировщик задач: Он уже готов, и пользователи могут
выбирать между классическим планировщиком 44BSD и новым
<para>Новый планировщик задач: он уже готов, и пользователи могут
выбирать между классическим планировщиком 4BSD и новым
планировщиком ULE. В ветке &t.releng.5; должен быть планировщик,
имеющий привязку к процессору, поддержку HyperThreading и KSE,
а также отсутствие снижения производительности или времени реакции